Přidat otázku mezi oblíbenéZasílat nové odpovědi e-mailemVyřešeno MySQL: Seřadit výsledky podle jiné tabulky

Ahoj, potřeboval bych pomoct s jedním MySQL dotazem (nevím co mám přesně googlovat, proto se ptám zde):
Mám tabulku jedna:

[b]
id     nazev
[/b]
1      pocitac
2      hardware
3      software

Potom mám tabulku číslo dva:

[b]
id      idr      nazev
[/b]
1       1        zaklady
2       1        periferie
3       3        Windows

kde v druhé tabulce je idr id "rodiče" tabulky jedna. Tudíž v první tabulce:
K id 1 jsou přiřazeny 2 subkategorie, ke dvojce žádná(0) a k trojce jedna. A já potřebuji to takto seřadit, aby se mi podařil takovýto výpis:
počítač-software-hardware přesně podle počtu subkategorii v tabulce 2 přiřazené jedničce. Díky za odpověď.

Jsou zobrazeny jen nové odpovědi. Zobrazit všechny
Předmět Autor Datum
mohlo by to pomoct, este som to neotestoval :) skusim si to hodit do databazy a overim to SELECT T2…
wam_Spider007 01.02.2009 12:49
wam_Spider007
druha moznost je... vytvorit si VIEW podla druhej tabulky, ktore ti bude zobrazovat IDR (id rodica)…
wam_Spider007 01.02.2009 13:03
wam_Spider007
Thx funguje to ;-)
marekdrtic 01.02.2009 14:31
marekdrtic
Funguje to, ale je to pouze obchazeni spatneho navrhu databaze a v budoucnu se ti to vymsti, protoze…
Jan Fiala 01.02.2009 14:34
Jan Fiala
Já to uvedl pouze jako příklad, ve skutečnosti ty tabulky vypadají takto: Kategorie jsou: Auto-moto… poslední
marekdrtic 01.02.2009 14:36
marekdrtic

mohlo by to pomoct, este som to neotestoval :)
skusim si to hodit do databazy a overim to

SELECT T2.IDR, T1.NAZEV, IFNULL(COUNT(T2.IDR), 0)
FROM TAB2 T2
RIGHT JOIN TAB1 T1 ON T2.IDR = T1.ID
GROUP BY T2.IDR, T1.NAZEV
ORDER BY COUNT(T2.IDR) DESC

EDIT: doplnene descending zoradovanie ;)
otestoval som to u seba a ide to. Jediny problem je, ze pri software sa nezobrazuje ID nadradeneho riadku.

takze vysledok je

1 - Pocitac - 2
3 - Hardware - 1
null - software - 0

Já to uvedl pouze jako příklad, ve skutečnosti ty tabulky vypadají takto:
Kategorie jsou:
Auto-moto
Cestování a regiony
Zábava a hobby

a v tabulce subkategorie je třeba k zábavě a hobby toto:
Chovatelství, Film, Hry, Hudba, Humor, Koníčky a hobby....
A v další tabulce odkazy už jsou samotné odkazy, id subkategorie a id kategorie.

Zpět do poradny Odpovědět na původní otázku Nahoru