Hey Leute!
Da ich leider keine Lösung zu meinem Problem gefunden hab, versuch ich es hier mal.
Also ich hab ein Selectstatement und darin nochmal ein Select, welches mir für jedes Produkt eine kumulierte Summe berechnet. Leider dauert das auf alle Datensätze bezogen über 20 Sekunden. Ich hoffe, dass von euch jemand weiß wie man das verbessern kann.
Hier mein Statement:
Da ich leider keine Lösung zu meinem Problem gefunden hab, versuch ich es hier mal.
Also ich hab ein Selectstatement und darin nochmal ein Select, welches mir für jedes Produkt eine kumulierte Summe berechnet. Leider dauert das auf alle Datensätze bezogen über 20 Sekunden. Ich hoffe, dass von euch jemand weiß wie man das verbessern kann.
Hier mein Statement:
Code:
SELECT ISNULL(-SUM(INVENTTRANS.QTY), 0)
FROM SALESLINE
INNER JOIN INVENTTRANSORIGINSALESLINE ON SALESLINE.INVENTTRANSID = INVENTTRANSORIGINSALESLINE.SALESLINEINVENTTRANSID
AND SALESLINE.DATAAREAID = INVENTTRANSORIGINSALESLINE.SALESLINEDATAAREAID
AND SALESLINE.PARTITION = INVENTTRANSORIGINSALESLINE.PARTITION
INNER JOIN INVENTTRANSORIGIN ON INVENTTRANSORIGIN.RECID = INVENTTRANSORIGINSALESLINE.INVENTTRANSORIGIN
AND INVENTTRANSORIGIN.PARTITION = INVENTTRANSORIGINSALESLINE.PARTITION
INNER JOIN INVENTTRANS ON INVENTTRANS.INVENTTRANSORIGIN = INVENTTRANSORIGIN.RECID
AND INVENTTRANSORIGIN.PARTITION = INVENTTRANS.PARTITION
WHERE SALESLINE.ITEMID = LGDSALESDELIVERYPLANVIEW.ITEMID
AND SALESLINE.DATAAREAID = LGDSALESDELIVERYPLANVIEW.DATAAREAID
AND SALESLINE.PARTITION = LGDSALESDELIVERYPLANVIEW.PARTITION
AND REMAINSALESPHYSICAL > 0
--AND CONCAT(DATEPART(year, SALESLINE.SHIPPINGDATECONFIRMED), '-', FORMAT(DATEPART(isoww, SALESLINE.SHIPPINGDATECONFIRMED), '00')) <= CONCAT(DATEPART(year, LGDSALESDELIVERYPLANVIEW.SHIPPINGDATECONFIRMED), '-', FORMAT(DATEPART(isoww, LGDSALESDELIVERYPLANVIEW.SHIPPINGDATECONFIRMED), '00'))
AND ((CAST(SALESLINE.SHIPPINGDATECONFIRMED as date) < CAST(LGDSALESDELIVERYPLANVIEW.SHIPPINGDATECONFIRMED as date))
OR (CAST(SALESLINE.SHIPPINGDATECONFIRMED as date) = CAST(LGDSALESDELIVERYPLANVIEW.SHIPPINGDATECONFIRMED as date) AND SALESLINE.RECID <= LGDSALESDELIVERYPLANVIEW.SALESLINERECID))
AND DATEPART(YEAR, SALESLINE.SHIPPINGDATECONFIRMED) > 2000
AND NOT SALESID LIKE 'SF%'
AND INVENTTRANS.STATUSISSUE > 4