Registriert seit: 27. Nov 2017
2.490 Beiträge
Delphi 7 Professional
|
AW: SQl Abfrage sehr langsam
21. Jun 2024, 11:14
Meinst Du sinngemäß sowas?
SQL-Code:
select -- Zuletzt die Summen je FahrerNr bilden
FahrerNr,
b.Name,
Sum(Umsatz) as Umsatz,
Sum(Bar) as Bar,
Sum(Karte) as Karte,
Sum(LS) as LS
from (
select -- FahrerNr, Name und Umsatz nach Zahlart separieren
FahrerNr,
b.Name,
VKBG as Umsatz,
case when Zahlart = 1 then VKBG else 0 end as Bar,
case when Zahlart = 3 then VKBG else 0 end as Karte,
case when Zahlart = 2 then VKBG else 0 end as LS
from (
select -- uns interessieren nur die Daten zum EingabeDatum
FahrerNr,
VKBG
from Tagesumsatz
where cast(Datum as Date) = :EingabeDatum
) TU
-- nur die Fahrerdaten zum EingabeDatum dazu holen,
-- anstatt zuerst alle Fahrerdaten zu beliebigem Datum zusammensuchen
-- und dann erst die zum EingabeDatum zu separieren.
left join Fahrer b on b.Nr = tu.FahrerNr
) a
Group by
FahrerNr,
Name;
(nur hingedaddelt, deshalb kann ich den einen oder anderen Schreib- bzw. Syntaxfehler nicht ausschließen)
|
|
Zitat
|