Vyber ID ciek kategorii a n subkategorii z mysql

Sekcia: Programovanie 27.09.2014 | 14:49
Avatar nyztor   Používateľ

Zdravím vas

Prosim vas mam taky problem mam tabulku v mysql

CREATE TABLE category (
id int not null auto_increment,
name varchar(250),
parent int(11) default 0,
primary key(id));
ID     NAME             PARENT
1      Ovocie           0
2      Jablka           1
3      Cervene jablka   2
4      Zelene jablka    2
5      Zlte jablka      2
6      Okruhle          5
7      Hranate          5

Potreboval by som spravit nejako select ktory by prechadzal kategorie n krat po parentoch a vyhodil mi ich id cka pre priklad nieco ako

SELECT allidsadnsubids FROM category WHERE id = 1

- vyhodilo by 1,2,3,4,5,6,7

SELECT allidsadnsubids FROM category WHERE id = 5

- vyhodilo by 5,6,7

Dakujem za odpovede. S tymto si skutocne neviem rady. Pozeral som aj po nete. Je tam toho dost ale vecsina riesi pri znamom pocte subkategorii.

    • RE: Vyber ID ciek kategorii a n subkategorii z mysql 27.09.2014 | 17:17
      Avatar bedňa LegacyIce-antiX  Administrátor

      Neviem či som to dobre pochopil.

      SELECT id FROM category WHERE id >= 1

      Táto správa neobsahuje vírus, pretože nepoužívam MS Windows. http://kernelultras.org
    • RE: Vyber ID ciek kategorii a n subkategorii z mysql 29.09.2014 | 08:23
      Avatar Miroslav Bendík Gentoo  Administrátor

      S takto ukladaným stromom v mysql som videl kadejaké riešenia, ale ani jedno skutočne efektívne. Rozumné by bolo zmeniť tabuľku na Nested Set a vyberať spôsobom left >= ... AND right <= ...