Entwickler-Ecke

Datenbanken - SQL Formulierung gesucht


LCS - Di 10.09.02 18:27
Titel: SQL Formulierung gesucht
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

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


Alfons-G - Di 10.09.02 18:41

Sollte kein Problem sein (außer bei MySQL):

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:


LCS - Di 10.09.02 18:54

Tja, so hab ich mir das eigentlich auch vorgestellt. Aber ist nicht. IB meckert über das zweite Select :evil:

Frustgrüsse Lothar


Cashels - Mi 11.09.02 10: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:

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 - Mi 11.09.02 10:48

Hi
echt prima Idee. Warum bin ich da nicht selbst drauf gekommen :oops:

Danke
Lothar