Diskuze: Výpis z více tabulek v MySQL
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Zobrazeno 4 zpráv z 4.
V předchozím kvízu, Online test znalostí PHP, jsme si ověřili nabyté zkušenosti z kurzu.
Neni mi moc jasne, jak to mas ulozene. Asi nejak nelogicky.
SELECT sloupec5, sloupec2 FROM tabulka
Vyberes data z 2d tabulky. Zformatujes do tbody. A z prvniho sloupce navic vygenerujes zahlavi pres nejaky prekladac (funkce, ktera priradi nazvu sloupce podle db nejaky cesky nazev, pripadne dalsi vecicky jako tlacitka pro serazovani a pod).
Tva otazka nedava moc smysl, kdyz se ptas, jak mit spravne poradi sloupcu v zahlavi vuci body. Poradi bude vzdycky spravne, protoze ho ziskavas primo z tabulky, sql dotazu pro tbody.
Nebo, pokud tedy mas ty nazvy take v db, tak tam mas nejspis definovane
poradi sloupcu ve sloupci order. Pak das jen do sql dotazu "SELECT ... ORDER by
tab.order".
Urcite by mne napadlo dalsich X zpusobu i bez toho order, ale nechce se mi
premyslet na vsemi moznostmi, kdyz nemam tuseni, jakou moznost tam mas zrovna
ty.
Já mám 2 tabulky. A z první vypisuji názvy a ze druhé vlastnosti podle ID názvů v té první.
Aha. A proc tedy nemas 3?
nazvy (id_nazvy , nazev)
vlastnosti (id_vlastnosti, nazev)
spoj (id_nazvy, id_vlastnosti)
SELECT b.nazev, c.nazev
FROM spoj a
LEFT JOIN nazvy b ON b.id_nazvy=a.id_nazvy
LEFT JOIN vlastnosti c ON c.id_id_vlastnosti=a.id_id_vlastnosti
Jestli to potrebujes tridit do jedne obri tabulky, tak bych tam dal id a
vytridil to v php.
A nebo bys asi musel pouzit group. To bych nechal na nekom jinem, kdo to vic
pouziva.
Nebo pro kazdou kategorii (sloupec zahlavi) zvlast dotaz s WHERE
Zobrazeno 4 zpráv z 4.