Databases Reference
In-Depth Information
Das Füllen der Tabelle funktioniert wie folgt:
insert into[dbo].[order_history]
SELECT row_number() over (partition by bd.riskID
order by bd.Datum) as lfdNr,bd.riskID, bd.Datum, bd.Bestellung,
bd.Artikelmenge,
bd.Gesamtsumme,rd.Anzahl_R_Artikel, rd.R_Nettowert
from
(Select a.riskID, a.Datum, a.Bestellung, a.Artikelmenge, a.Gesamtsumme
from
(SELECT c.riskID ,s.postingDate Datum,s.orderNo Bestellung,
cast (sum (s.quantity)as DECIMAL(10,0))Artikelmenge,
cast (sum (s.amount)as DECIMAL(10,2))Gesamtsumme
from [dbo].[iw_sales]s,[dbo].[iw_customer]c
where s.customerNo = c.customerNo
and s.type = 2
and s.quantity > 0
group by c.riskID,s.postingDate,s.orderNo)a) bd
Left OUTER JOIN
(SELECT c.riskID IRID,s.postingDate Datum,
rh.orderNo Bestellung,
cast(sum( rl.quantity)as DECIMAL(10,0)) Anzahl_R_Artikel,
cast(sum (rl.line_amount)as DECIMAL(10,2))R_Nettowert
FROM [dbo].[iw_sales]s,[dbo].[iw_customer]c,[dbo].[iw_return_line]rl,
[dbo].[iw_return_header]rh
where s.type = 2
and s.orderNo = rh.orderNo
and rh.returnNo = rl.returnNo
and s.IWAN = rl.IWAN
and rl.type = 2
and s.customerNo = c.customerNo
group by c.riskID, s.postingDate, rh.orderNo)as rd
on bd.Bestellung = rd.Bestellung
where exists
(select cv.riskID from [dbo].[customer_value] cv
where bd.riskID = cv.riskID
and cv.Bestellungen > 1)
16.3■Auswertungen der Bestellhistorie
Ist die Tabelle erstellt, geladen und die Tabellenansicht aktualisiert, können Sie mit der
Auswertung starten. Wir werden nicht alle Möglichkeiten ausschöpfen, sondern den grund-
legenden Umgang mit dieser Tabelle aufzeigen. Um mit der Historie zu arbeiten, müssen
wir die Tabelle öter mit sich selbst joinen.
16.3.1■Selfjoin
Wird eine Tabelle mit sich selbst gejoint, nennt sich das Selfjoin . In solch einem Fall ist die
Vergabe eines Aliasnamens unerlässlich.
 
Search WWH ::




Custom Search