Thema: Delphi Performance verbessern

Einzelnen Beitrag anzeigen

omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#38

Re: Performance verbessern

  Alt 10. Dez 2006, 19:55
So, hier mal ein neuer Versuch...

SQL-Code:
SELECT k.name AS kategorie, NULL AS unter, NULL AS rezept, ka.anzahl, '1' typ
FROM kategorie k
LEFT JOIN (SELECT kategorie, COUNT(DISTINCT name) anzahl
           FROM rezepte
           GROUP BY kategorie, unterkat) ka
  ON k.name = ka.kategorie

UNION

SELECT k.name AS kategorie, uk.unter, NULL AS rezept, ka.anzahl, '2' typ
FROM kategorie k
INNER JOIN unterkat uk
  ON k.name = uk.kat
LEFT JOIN (SELECT kategorie, unterkat, COUNT(*) anzahl
           FROM rezepte
           GROUP BY kategorie, unterkat) ka
  ON k.name = ka.kategorie
     AND uk.unter = ka.unterkat

UNION

SELECT kategorie, unterkat, r.name, NULL AS anzahl, '3' typ
FROM rezepte r

ORDER BY kategorie, unter, rezept, typ
Gruss
Thorsten
  Mit Zitat antworten Zitat