Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: LIMIT w jednym zapytaniu?
Forum PHP.pl > Forum > Bazy danych > MySQL
cahe
Mam następującą bazę danych:

1. tabela categories z polami 'name', 'id' oraz 'id_p'

name - nazwa kat.
id - id kat.
id_p - id rodzica, czyli kategoria nadrzędna

2. tabela items z polami 'id', 'id_c' i 'name'

name - -||-
id - id produktu
id_c - id kategorii

Mam następujący problem. Produkty są porozrzucane po różnych kategoriach, np mam główną kategorię Oprogramowanie, w niej podkategorie Graficzne, Biurowe, w Graficzne powiedzmy Adobe i Macromedia (teraz to to samo ;>), w Biurowych Microsoft i Lotus.

Kiedy klikam na kategorie wyświetlają się wszystkie zawarte w niej produkty + produkty z podkategorii. Np. Klikając na Biurowe otrzymam wszystkie produkty przypisane do Biurowe, jak i do Microsoft i Lotus.

Moje pytanie brzmi: Czy można to wyciągnąć jednym zapytaniem tak żebym mógł stosować mysql'owskie "polecenie" LIMIT? Chce dzielić produkty na strony, ale nie mam za bardzo pomysłu jak to zrobić, jeśli wyciągam je kilkoma zapytaniami z kilku kategorii na raz (głowna + wszystkie podrzędne).

Proszę o pomoc! :-)
Kas
Wyciągasz je naraz (główna i podrzędne kategorie) i potem dzielisz na kolejne strony.
Możesz wtedy dać np. według kategorii lub nazwy.
cahe
tak, fajnie. ale jak je na raz wyciągnąć?! podkategorii może być np. 10 poziomów.
Kas
Może stworzyć odzielną tabelę za mapą działów?
cahe
niby można i mogę nawet zrobić coś takiego w samym php, ale... nie da się prościej?!

wbrew pozorom to nie jest banalny problem - trzeba by użyć rekurencji w mysql'u jesli takie coś istnieje...
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.