Databáze > Ostatní DB

SQLite - výsledky v jednej tabuľke

(1/1)

Slavomir:
Ahojte,
prosím o radu, či je možné získať z jedného SQLite dotazu nasledovné výsledky.
Povedzme, že mám dve jednoduché tabuľky v relácii 1:N. Prvá tabuľka (napr. TOVAR), druhá tabuľka (napr. VLASTNOSTI). Logicky z toho vyplýva, že 1 tovar môže mať N vlastností.
Krátky príklad štruktúry polí:
TOVAR: tov_ID, tov_nazov
VLASTNOSTI - vla_ID, vla_nazov

Potrebujem dosiahnuť nasledovný výsledok (pomocou jedného dotazu !):

tov_ID; tov_nazov; (zoznam všetkých priradených vlastností)
1; lampa; (malá | biela | 220V)
2; stolička; (veľká | drevená)
3; televízia; (veľká | LCD | 220V)
4; hračka; (malá | biela)

Toto je len fiktívny príklad, v skutočnosti sú údaje viac logickejšie...  ;D Zátvorky pri vlastnostiach nie sú povinné.
Nemám problém získať údaje pomocou viacerých dotazov, ale vzhľadom na objem dát by som to chcel dosiahnuť iba jedným SQLite dotazom.
Ďakujem za pomoc.

vandrovnik:
Firebird má funkci LIST, která by na to šla použít, SQLite nevím.

pf1957:

--- Citace: vandrovnik  24-01-2022, 08:17:27 ---Firebird má funkci LIST, která by na to šla použít, SQLite nevím.

--- Konce citace ---
SQLite ma group_concat(), coz by mohla byt podobna agregacni funkce jako List(), ale nikdy jsem ani jednu nepouzil

Slavomir:

--- Citace: pf1957  24-01-2022, 14:16:32 ---SQLite ma group_concat(), coz by mohla byt podobna agregacni funkce jako List(), ale nikdy jsem ani jednu nepouzil

--- Konce citace ---
Trefa do čierneho! Príkaz group_concat() funguje presne takto, ako potrebujem.
Priznám sa, táto funkcia mi bola doteraz neznáma. Srdečná vďaka za pomoc!

Navigace

[0] Seznam témat

Přejít na plnou verzi