« powrót

Hierarchiczna lista kategorii w MySql [SQL]

Opublikowano: 2009-07-29 , wyświetlono: 4700

Zapytanie SQL do wyświetlenia listy kategorii wraz z podkategoriami wg poniższego przykładu:

- monitory
-- lcd
-- crt
- drukarki
-- laserowe
--- kolorowe
--- b/w
-- atramentowe


/* struktura tabeli */
CREATE TABLE cms_category (
  id int(11) NOT NULL auto_increment,
  id_parent int(11) default NULL,
  name varchar(80) default NULL,
  status int(11) default NULL,
  PRIMARY KEY  (id)
)

/* zapytanie */
SELECT
parent.id, cat.id_parent, cat.name as name
FROM
cms_category as parent, cms_category as cat
WHERE
((parent.id = cat.id_parent) OR (parent.id_parent = 0))
AND ((parent.id = cat.id_parent) or (parent.name = cat.name))
ORDER BY
parent.name, cat.id_parent, cat.name



Komentarze: