Keine Ahnung, ob es das besser macht, aber man kann Delphi.Nariums abfrage noch einkürzen:
SQL-Code:
select
t.FahrerNr,
b.Name,
Sum(VKBG) as Umsatz,
Sum(case when Zahlart = 1 then VKBG else 0 end) as Bar,
Sum(case when Zahlart = 3 then VKBG else 0 end) as Karte,
Sum(case when Zahlart = 2 then VKBG else 0 end) as LS
From Tagesumsatz t
Left join Fahrer b on b.Nr = tu.FahrerNr
Where cast(Datum as Date) = :EingabeDatum
Group by
FahrerNr, Name;