2009-07-01 5 views
2

Ich habe eine Abfrage erstellt, die Gruppen von Produktionsdaten auf ISO Woche durch diese Abfrage mitSQL GROUP BY Woche (Montag 07.00.00 bis Montag 06.59.59)

SELECT to_char(wid_date,'IYYY'), to_char(wid_date,'IW'), tonnes 
FROM production 
WHERE to_char(wid_date,'IYYY') = '2009' 
GROUP BY to_char(wid_date,'IYYY'), to_char(wid_date,'IW') 

Das Problem ist, dass Unsere "Produktionswochen" folgen nicht dem ISO-Standard. Sie laufen von Montagmorgen um 07:00 Uhr bis Montagmorgen um 06:59:59 Uhr.

Irgendwelche Vorschläge, wie ich es bekommen kann, um unsere Produktionswochen zu melden? freundlich

Danke,

Tommy

Antwort

6
SELECT to_char(wid_date - 7/24,'IYYY'), to_char(wid_date - 7/24,'IW'), tonnes 
FROM production 
WHERE to_char(wid_date - 7/24,'IYYY') = '2009' 
GROUP BY to_char(wid_date - 7/24,'IYYY'), to_char(wid_date - 7/24,'IW') 
+0

wow. das hat wie ein Zauber funktioniert. Ich kann nicht glauben, dass es so sauber ist wie es ist. –

+0

Korrigiert meinen Code (Randbedingung). Die Jahresgruppierung muss in gleicher Weise angepasst werden. Sonst werden Sie in den Jahren 2012/13, 2018/19, 2024/25 und in den Jahren 2001/02, 2007/08 ... –

Verwandte Themen