Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Pobranie po 10 wierszy z jednej tabeli
Forum PHP.pl > Forum > Bazy danych > MySQL
tomekmvr
Witam

Mam np tabele programy

  1. id | id_kategori | wartosc
  2. 1 1 2
  3. 2 1 32
  4. ...
  5. 21 2 4
  6. 22 2 54
  7. ...
  8. 56 3 1
  9. 57 3 1
2

Chciałbym porbać z tej tabeli po 10 wierszy dla id_kategorii 1, 2 i 3. Czy da się to zrobić jednym zapytaniem, czy muszę dla każdej id_kategori robić osobne zapytanie?
takie
  1. SELECT * FROM programy WHERE id_kategori = 1 LIMIT 10
uupah5
jednym prostym się nie da - limit ogranicza końcowe wyniki, a ty potrzebujesz ograniczenia wyników cząstkowych.
można się bawić w subquery albo union, ale to będzie w sumie to samo - wykonanie X zapytań, tylko zapisanych jednym ciurkiem.
mortus
@uupah5: To nie będzie to samo z punktu widzenia wydajności aplikacji. Dużo lepiej sprawdzi się suma zbiorów (UNION), aniżeli ciągłe wysyłanie zapytań do bazy danych. Najmniej optymalnym rozwiązaniem są podzapytania, choć zawsze jakimś są i być może sprawdzą się lepiej niż wspomniane ciągłe "odytywanie" bazy danych.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.