Databases Reference
In-Depth Information
Dazu benötigen wir für jeden Kunden zwei Werte: Das Datum des ersten Einkaufs und das
Datum des letzten Einkaufs. Die Zeitspanne zwischen diesen beiden Einträgen wird dann
berechnet.
Der erste Select für die beiden Datumseinträge ist ganz einfach.
SELECT c.riskID, → Kundennummer
Min(postingDate) first_order, → erstes Datum
Max(postingDate)last_order → letztes Datum
FROM [dbo].[iw_sales]s,[dbo].[iw_customer]c
where s.customerNo = c.customerNo
group by c.riskID → gruppiert nach der Kundennummer
Das Ergebnis ist eine Liste, ist in Bild 14.1 dargestellt ist.
 Bild 14.1■
Ergebnisliste mit irst_order und
last_order
Wie Sie sehen, gibt es auch Kunden, bei denen das Datum der irst_order identisch mit
dem Datum der last_order ist. Diese Kunden haben nur eine Bestellung im System getätigt.
Doch bleiben wir bei denjenigen Kunden, die mindestens zweimal bestellt haben. Wir
berechnen dazu die Zeitspannen zwischen den beiden Bestellungen mit der Funktion
DATEDIFF . Dieser Befehl berechnet die Diferenz zwischen zwei Datumsfeldern bzw. -ein-
trägen. Man muss nur noch angeben, ob die Diferenz in Tagen, Monaten oder Jahren aus-
gewiesen werden soll.
DATEDIFF ( day, <erstesDatum>,<letztesDatum> )
→ Diferenz in Tagen
DATEDIFF ( month, <erstesDatum>,<letztesDatum> )
→ Diferenz in Monaten
DATEDIFF ( year, <erstesDatum>,<letztesDatum> )
→ Diferenz in Jahren
 
Search WWH ::




Custom Search