Databases Reference
In-Depth Information
FROM [dbo].[iw_sales]s,[dbo].[iw_customer]c
where s.customerNo = c.customerNo
and s.type = 2)b
where a.riskID = b.riskID
and a.firstOrder = b.postingDate
group by DATEPART (yyyy,a.firstOrder),DATEPART (mm,a.firstOrder)
order by DATEPART (yyyy,a.firstOrder),DATEPART (mm,a.firstOrder)
Dazu bedienen wir uns einer weiteren Unterabfrage, bei der nur die riskID und das erste
Bestelldatum erhoben werden (Alias a ). Dahinter fügen wir, durch Komma getrennt, die
bereits bekannte Unterabfrage an (Alias b ). Aus Abfrage a verarbeiten wir das Datum und
die Kundenummer, aus Abfrage b die Bestelldaten. Der Join verläut über zwei Bedingun-
gen:
where a.riskID = b.riskID
and a.firstOrder = b.firstOrder
Schauen Sie sich jetzt einmal das Ergebnis an (Bild 11.4).
 Bild 11.4■
Ergebnis mit Fixierung des ersten
Bestelldatums
Das sieht schon besser aus, aber das Problem ist noch nicht ganz behoben, da durch die
orderNo auch eine Zweitbestellung desselben Tages mit aufgeführt werden kann. Wenn
wir wirklich nur die allererste Bestellung haben möchten, müssen wir die orderNo weg-
lassen.
Select
DATEPART (yyyy,a.firstOrder) Jahr,
DATEPART (mm,a.firstOrder) Monat,
count (distinct a.riskID)Neukunden,
sum (b.quantity) Artikelmenge,
 
Search WWH ::




Custom Search