Autor Zpráva
Volda
Profil
Mno nejak se mi nedaří propojit několik tabulek správným způsobem
Mám několik tabulek. V hlavní tabulece je uložen obsah a ve sloupečcích jsou id dalších tabulek...
content
+----------+-------------------------+
| cont_id | dalsi id a obsah .... |
+----------+-------------------------+
| 1 | *** |
| 2 | *** |
| 3 | *** |
| 4 | *** |
| 5 | *** |
+----------+-------------------------+

category
+---------+-------------+
| cat_id | cat_name |
+---------+-------------+
| 1 | Sport |
| 2 | Zprávy |
| 3 | Zábava |
| 4 | TV |
+---------+-------------+

node
+--------+----------+
| cat_id | cont_id |
+--------+----------+
| 1 | 1 |
| 2 | 2 |
| 1 | 3 |
| 3 | 4 |
| 4 | 5 |
| 4 | 6 |
| 4 | 7 |
+--------+----------+

zhruba takhle vypadaj tabulky vsechny tady delat nebudu princip je shodny...
Mno a kdyz chci vypsat z tabulky node kategorie (cat_id) 1 a 4 tak dotaz =>
SELECT * FROM content, category, node WHERE node.cat_id=1 AND node.cont_id=category.cont_id AND node.cat_id=category.cat_id OR node.cat_id=4 AND node.cont_id=category.cont_id AND node.cat_id=category.cat_id

Tento dotaz.... pri vyberu vyce kategorii a s ohledem na to ze je v dotazu opravdu vice propojovani tak to neni opravdu to prave....
netusi nekdo jak to propojit?
Kajman_
Profil *
A jaký výstup považujete za "to pravé"?
Volda
Profil
přijde mi, že tento dotaz je poněkud zdlouhavý...
Neustále se opakujou v něm stejné prvky při výběru z několika kategoriich....
Kajman_
Profil *
SELECT * FROM content o, category k, node n
WHERE n.cat_id in(1,4) AND n.cont_id=o.cont_id AND n.cat_id=k.cat_id
Volda
Profil
Mno to me taky nenapadlo.... jen mam ted trochu problem s tim, ze se mi tam vypisuje duplicitne obsah...
Zamezuje se tomu nejak pres to LEFT JOIN bo tak nejak...?
Kajman_
Profil *
group by
Volda
Profil
mno tohle vubec nevim jak se pouziva...
Mastodont
Profil
Tak se uč.
Volda
Profil
jj uz se ptam strejdy googla ;)
Kazdopadne dekuji za smer kudy se mam vydat...
Toto téma je uzamčeno. Odpověď nelze zaslat.

0