Databases Reference
In-Depth Information
Trainingsaufgabe: Lebensdauer
Bilden Sie zur Übung weitere Gruppen mit anderen Auteilungen, jeweils auf
Tages-, Monats- und Jahresbasis.
14.6■Die Aktivität (Customer Activity)
Ergänzend zur Lifetime wollen wir nun noch die Aktivitätsdaten der Kunden hinzufügen.
Das sind die bereits bekannten Daten, die Sie aus dem KPI-Bericht und dem Kundenmonitor
kennen. Wir werden den Select für diese Daten Schritt für Schritt zusammenbauen.
14.6.1■Bestelldaten
Als Kundennummer übernehmen wir die eindeutige riskID aus der Tabelle iw_customer .
Die Bestelldaten pro Kunde stammen aus der Tabelle iw_sales .
SELECT c.riskID,count(distinct s.customerNo)Konten,
count (distinct s.orderNo)Bestellungen, sum (s.quantity)Artikel,
sum (s.amount *s.quantity)Nettosumme
FROM [dbo].[iw_customer]c,[dbo].[iw_sales]s
where c.customerNo = s.customerNo
group by c.riskID
14.6.2■Retourendaten
Wir benötigen zusätzlich die Retourendaten, die wir der Tabelle iw_return_line entneh-
men. Diese Tabelle müssen wir mit einem OUTER JOIN verbinden, da es auch Kunden ohne
Retouren gibt. In diesem Fall benötigen wir einen LEFT OUTER JOIN , da sich in den ersten
Tabellen die Informationen zu allen Kunden und in der letzten Tabelle nur die Informatio-
nen zu einem Teil der Kunden beinden.
Gejoint wird über die customerNo .
SELECT c.riskID,count(distinct s.customerNo)Konten,
count (distinct s.orderNo)Bestellungen, sum (s.quantity)Artikel,
sum (s.amount *s.quantity)Nettosumme,
count (distinct rl.returnNo)Retouren, sum (rl.quantity)Ret_Artikel,
sum (rl.line_amount)Ret_Nettowert
FROM [dbo].[iw_customer]c,[dbo].[iw_sales]s
left outer join
[dbo].[iw_return_line]rl
on s.customerNo = rl.customerNo
where c.customerNo = s.customerNo
group by c.riskID
 
Search WWH ::




Custom Search