Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL] Nietypowe zapytanie do bazy
Forum PHP.pl > Forum > Przedszkole
adam882
Witam

Chciałbym prosić o pomoc w napisaniu zapytania mysql. Stworzyłem tabelę kategorie dla katalogu w której znajduje się: id, nazwa, parentid. Kiedy parentid=0 to dana kategoria widziana jest jako główna, w przeciwnym razie, kiedy nie jest równe 0, podany jest id do kategorii głównej, a rekord widziany jest jako subkategoria. Przykładowo mając takie rekordy:

ID | NAZWA | PARENTID
1 Biznes 0
2 Banki 1
3 Finanse 1

  1. $q=mysql_query('SELECT id, nazwa, parentid FROM kategorie WHERE id='.$szukanyid.'');

Chciałbym zrobić w jednym zapytaniu, aby pobierając podkategorii nazwę z jej numeru ID dodatkowo móc pobrać jeszcze nazwę kategorii głównej dla niej,aby wyglądało np. Biznes >> Finanse
tvister
kolejny freestyle
  1. SELECT id, nazwa, IF (id_parent,SELECT nazwa FROM hulalipopolubd WHERE id = id_parent,0) FROM hulalipopolubd
adam882
mam coś takiego, ale nie działa worriedsmiley.gif
  1. SELECT id, nazwa, parent, IF(parent,SELECT nazwa FROM kategorie WHERE id=parent,0) FROM kategorie WHERE id=153 LIMIT 1
tvister
a tak
  1. SELECT id, nazwa, parentid, IF(parentid > 0,(SELECT nazwa FROM kategorie WHERE id = k.parentid),0) AS przodek FROM kategorie AS k WHERE k.id=2 LIMIT 1
seth-kk
  1. SELECT k.nazwa, pk.nazwa AS parent_nazwa FROM kategorie k LEFT JOIN kategorie pk ON k.parentid = pk.id WHERE k.id = $twojeID
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.