Autor Beitrag
LCS
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1305
Erhaltene Danke: 1

WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
BeitragVerfasst: Di 10.09.02 19:27 
Hallo Leute
ich hab ein kleines SQL-Problem. Vorhanden ist eine Tabelle mit drei Feldern
FIRMA
KUNDE
BETRAG
in die fortlaufend Buchungen geschrieben werden. Umfang ca. 100.000 Sätze.
Zur Auswertung wird sie nach Firma, und Kunde zusammengefasst mit
ausblenden Quelltext
1:
2:
select sum(BETRAG), FIRMA, KUNDE from BONUS
group by FIRMA, KUNDE

Mein Problem ist, wie krieg ich jetzt raus wieviele Sätze diese Abfrage liefert? Ich muss es irgendwie mit SQL rausfinden, da die IBX-Komponenten bei RecordCount keine korrekten Werte liefern.

Danke für euere rege Gehirntätigkeit :D
Lothar

_________________
Der BH ist für die Brust, der Plan ist für'n Ar...
Alfons-G
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 307

Win XP Prof, Linux, Win 7
D5 Prof, D7 Architect, D2005 Architect, D2007 Architect
BeitragVerfasst: Di 10.09.02 19:41 
Sollte kein Problem sein (außer bei MySQL):
ausblenden Quelltext
1:
2:
3:
select count(*) from
  (select Firma, Kunde from Bonus
   group by Kunde)
Die innere Abfrage liefert die Firma/Kunde-Kombinationen und gruppiert sie, die äußere Abfrage zählt dann das Ergebnis.

:think:

_________________
Alfons Grünewald
LCS Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1305
Erhaltene Danke: 1

WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
BeitragVerfasst: Di 10.09.02 19:54 
Tja, so hab ich mir das eigentlich auch vorgestellt. Aber ist nicht. IB meckert über das zweite Select :evil:

Frustgrüsse Lothar

_________________
Der BH ist für die Brust, der Plan ist für'n Ar...
Cashels
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 167



BeitragVerfasst: Mi 11.09.02 11:27 
Hi Lothar,

da du mit Interbase arbeitest: hast du schon versucht erst eine View zu erstellen und dann die Datensätze zu zählen, z.B. so:
ausblenden Quelltext
1:
2:
3:
4:
5:
create view vw_Gruppiert as
  select Firma, Kunde from Bonus 
  group by Kunde

select count(*) from vw_Gruppiert

Gruss,
Tom
LCS Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 1305
Erhaltene Danke: 1

WIN 7, WIN 8
Delphi XE5, Delphi XE, Delphi 2007
BeitragVerfasst: Mi 11.09.02 11:48 
Hi
echt prima Idee. Warum bin ich da nicht selbst drauf gekommen :oops:

Danke
Lothar

_________________
Der BH ist für die Brust, der Plan ist für'n Ar...