Finde die SQL-Abfrage dazu nicht
-
Hallo zusammen. ich habe ein problem mit dem ich mich schon seit wochen beschäftige. Ich bekomme es einfach nicht hin eine Abfrage zu bekommen. Folgendermassen sehen meine beiden Tabellen aus.
Tabelle1:
BearbNr ProduktID ArtAnzahl
1 10 4
2 10 4
3 10 4
4 11 24Tabelle2:
BearbNr KundNr
1 100
2 100
3 101Jetzt müßte ich halt wissen wieviel Artikel mit der ID 10 gekauft wurden und von wievielen veschiedenen Kunden. Irgendwie komme ich einfach nicht zum Ergebnis. Ich sitze schon seit einem Tag.
Das Ergebnis sollte folgendermassen aussehen:
ProduktID ArtAnzahl VerschiedeneKäufer
10 12 2Es wäre super wenn mir jemand helfen würde dafür eine SQL-Anweisung zu finden.
Ich habe schon folgendes hinbekommen aber das ist nicht das wahre:
select Tabelle1.ProduktID,sum(Tabelle.ArtAnzahl),count(Tabelle.KundNr) from Tabelle1,Tabelle2 where Tabelle1.BearbNr = Tabelle2.BearbNr group by Tabelle1.ProduktID
bei dieser Anweisung bekomme ich leider die Anzahl der verschieden Käufer falsch. Ich bekomme 3, es sollen aber 2 sein.
Wenn ich jedoch zu group by noch Tabelle2.KundNr dazu tue dann wird das ganze nochmal aufgeteil und es enstehen dann zwei zeilen für ProduktID 10 jedoch will ich es in einer Zeile haben.
-
hm. nicht getestet und auch nicht besonders elegant
Select ProductID, Sum(ArtAnzahl), ( Select Count(KundenNr) From Tabelle2 Inner Join Tabelle1 On Tabelle2.BearbNr=Tabelle1.BearbNr Where ProduktID=T1.ProduktID Group By KundenNr ) As VerschiedeneKaeufer From Tabelle1 T1 Groupy by ProduktID