Thema: Delphi SQl Abfrage sehr langsam

Einzelnen Beitrag anzeigen

Delphi.Narium

Registriert seit: 27. Nov 2017
2.490 Beiträge
 
Delphi 7 Professional
 
#3

AW: SQl Abfrage sehr langsam

  Alt 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)
  Mit Zitat antworten Zitat