Einzelnen Beitrag anzeigen

BlueStarHH

Registriert seit: 28. Mär 2005
Ort: Hamburg
850 Beiträge
 
Delphi 11 Alexandria
 
#21

AW: [SQL] Wie Gruppensumme bilden?

  Alt 10. Mär 2021, 08:35
Es fehlt die Group by


SQL-Code:
execute block
as

begin
  for select
    substring(vp.ArtikelNr from 1 for 5) as Gruppe,
    vp.ArtikelNr as ArtikelNr,
    max(vp.Beschreibung) as Beschreibung,
    max(vp.Farbe) as Farbe,
    sum(vp.Menge) as Menge,
    sum(vp.NettoSumme) as NettoSumme
  from
    VorgangPos vp
  group by
    vp.ArtikelNr
    into :gruppe, :ArtikelNr, :Beschreibung, :Farbe, :Menge, :NettoSumme do
  begin
    for select sum(Menge) from VorgangPos where substring(ArtikelNr from 1 for 5) = Gruppe into :Gruppenmenge do suspend;
  end
end
Super, das läuft im IBExpert in etwas mehr als einer Sekunde durch! Das Ergebnis ist ja nun in einzelnen Variablen im Execute block. Nur wie kann ich das Ergebnis nun als Datenmenge in Delphi nutzen? Sorry für die dumme Frage, aber ich hab noch nie mit dem execute block gearbeitet. Wenn ich das ganze in eine SP packe, habe ich ja das selbe Problem oder nicht? Die SP kann ja keine Datenmenge aus mehreren Records zurückgeben oder doch?
  Mit Zitat antworten Zitat