Charly1979
Benutzer
- Beiträge
- 11
Hallo an alle,
bin neu in Forum und ist auch mein erstes Forum also habt bitte verständnis.
Ich habe meine Abfrage soweit fertig mir fehlt aber noch der Prozentanteil und ich habe noch nichtmal einen Ansatz wie ich dieses Problem löse deshalb auch dieser Beitrag.
Ich brauche zu der quantity noch den Prozentanteil, diesen auch gruppiert nach source_warehause.
Also Bsp. BER3 xx% BMVD und yy% Hardline
need_to_receive_by_datetimesource_warehouse_iddestination_warehouse_idsum(bas.quantity_requested)pg_category
27-FEB-14BER3FRA11BMVD
27-FEB-14BER3FRA12HARDLINE
27-FEB-14CGN1FRA13BMVD
27-FEB-14CGN1FRA12HARDLINE
27-FEB-14DUS2FRA16BMVD
27-FEB-14DUS2FRA18HARDLINE
27-FEB-14EDE5FRA15BMVD
27-FEB-14EDE5FRA15HARDLINE
27-FEB-14FRA3FRA199BMVD
27-FEB-14FRA3FRA122HARDLINE
27-FEB-14LEJ1FRA111BMVD
27-FEB-14LEJ1FRA12HARDLINE
27-FEB-14MUC3FRA19BMVD
27-FEB-14MUC3FRA17HARDLINE
27-FEB-14ORY1FRA16BMVD
27-FEB-14ORY1FRA13HARDLINE
SQL Befehl lautet Momentan noch so:
SELECT /*+ USE_HASH(bas, prg) */ bas.need_to_receive_by_datetime,
bas.source_warehouse_id,
bas.destination_warehouse_id,
Sum(bas.quantity_requested),
CASE
WHEN prg.gl_product_group = 1
OR prg.gl_product_group = 2
OR prg.gl_product_group = 3
OR prg.gl_product_group = 4
OR prg.gl_product_group = 5
OR prg.gl_product_group = 6
OR prg.gl_product_group = 7
OR prg.gl_product_group = 8 THEN
'BMVD'
ELSE 'HARDLINE'
END AS PG_Category
FROM xxx bas
LEFT JOIN yyy prg
ON bas.asin = prg.asin
WHERE bas.need_to_receive_by_datetime >
To_date('{RUN_DATE_YYYYMMDD}', 'YYYYMMDD')
AND bas.need_to_receive_by_datetime <
To_date('{RUN_DATE_YYYYMMDD}', 'YYYYMMDD')
+ 1
AND bas.destination_warehouse_id = 'FRA1'
AND prg.marketplace_id = 4
GROUP BY bas.need_to_receive_by_datetime,
bas.source_warehouse_id,
bas.destination_warehouse_id,
CASE
WHEN prg.gl_product_group = 14
OR prg.gl_product_group = 15
OR prg.gl_product_group = 27
OR prg.gl_product_group = 63
OR prg.gl_product_group = 65
OR prg.gl_product_group = 74
OR prg.gl_product_group = 153
OR prg.gl_product_group = 226 THEN 'BMVD'
ELSE 'HARDLINE'
END
ORDER BY bas.source_warehouse_id ASC;
Danke und Gruß
Thomas
bin neu in Forum und ist auch mein erstes Forum also habt bitte verständnis.
Ich habe meine Abfrage soweit fertig mir fehlt aber noch der Prozentanteil und ich habe noch nichtmal einen Ansatz wie ich dieses Problem löse deshalb auch dieser Beitrag.
Ich brauche zu der quantity noch den Prozentanteil, diesen auch gruppiert nach source_warehause.
Also Bsp. BER3 xx% BMVD und yy% Hardline
need_to_receive_by_datetimesource_warehouse_iddestination_warehouse_idsum(bas.quantity_requested)pg_category
27-FEB-14BER3FRA11BMVD
27-FEB-14BER3FRA12HARDLINE
27-FEB-14CGN1FRA13BMVD
27-FEB-14CGN1FRA12HARDLINE
27-FEB-14DUS2FRA16BMVD
27-FEB-14DUS2FRA18HARDLINE
27-FEB-14EDE5FRA15BMVD
27-FEB-14EDE5FRA15HARDLINE
27-FEB-14FRA3FRA199BMVD
27-FEB-14FRA3FRA122HARDLINE
27-FEB-14LEJ1FRA111BMVD
27-FEB-14LEJ1FRA12HARDLINE
27-FEB-14MUC3FRA19BMVD
27-FEB-14MUC3FRA17HARDLINE
27-FEB-14ORY1FRA16BMVD
27-FEB-14ORY1FRA13HARDLINE
SQL Befehl lautet Momentan noch so:
SELECT /*+ USE_HASH(bas, prg) */ bas.need_to_receive_by_datetime,
bas.source_warehouse_id,
bas.destination_warehouse_id,
Sum(bas.quantity_requested),
CASE
WHEN prg.gl_product_group = 1
OR prg.gl_product_group = 2
OR prg.gl_product_group = 3
OR prg.gl_product_group = 4
OR prg.gl_product_group = 5
OR prg.gl_product_group = 6
OR prg.gl_product_group = 7
OR prg.gl_product_group = 8 THEN
'BMVD'
ELSE 'HARDLINE'
END AS PG_Category
FROM xxx bas
LEFT JOIN yyy prg
ON bas.asin = prg.asin
WHERE bas.need_to_receive_by_datetime >
To_date('{RUN_DATE_YYYYMMDD}', 'YYYYMMDD')
AND bas.need_to_receive_by_datetime <
To_date('{RUN_DATE_YYYYMMDD}', 'YYYYMMDD')
+ 1
AND bas.destination_warehouse_id = 'FRA1'
AND prg.marketplace_id = 4
GROUP BY bas.need_to_receive_by_datetime,
bas.source_warehouse_id,
bas.destination_warehouse_id,
CASE
WHEN prg.gl_product_group = 14
OR prg.gl_product_group = 15
OR prg.gl_product_group = 27
OR prg.gl_product_group = 63
OR prg.gl_product_group = 65
OR prg.gl_product_group = 74
OR prg.gl_product_group = 153
OR prg.gl_product_group = 226 THEN 'BMVD'
ELSE 'HARDLINE'
END
ORDER BY bas.source_warehouse_id ASC;
Danke und Gruß
Thomas