Follow along with the video below to see how to install our site as a web app on your home screen.
Anmerkung: This feature may not be available in some browsers.
SELECT t.Datum,
t.Schicht,
sum(t.UmsatzSB1) AS UmsatzSB1
FROM (
SELECT left(StationName,patindex('%[0-9]%',StationName)+charindex(' ',right(StationName,len(StationName)-patindex('%[0-9]%',StationName)))-1) AS Standort,
-- Umsätze ab 22.00 Uhr werden der Nachtschicht des nächsten Tages zugerechnet
( CASE
WHEN datepart(hh,[Date]) BETWEEN 22 AND 23
THEN dateadd(day,1,cast([Date] AS DATE))
ELSE cast([Date] AS DATE)
END ) AS Datum,
( CASE
WHEN datepart(hh,[Date]) BETWEEN 22 AND 23
OR datepart(hh,[Date]) BETWEEN 0 AND 5
THEN 'Nacht'
WHEN datepart(hh,[Date]) BETWEEN 6 AND 13
THEN 'Früh'
WHEN datepart(hh,[Date]) BETWEEN 14 AND 21
THEN 'Spät'
ELSE 'Fehler/Zeit'
END ) AS Schicht,
Salesbezeichnung AS UmsatzSB1
FROM "Datenbankname"."dbo"."FirmaSales"
WHERE datepart(year,[Date]) = 2015
AND StationName LIKE 'SB [0-9]% %'
) t
GROUP BY t.Datum,t.Schicht
ORDER BY t.Datum,t.Schicht
Umsatz ist signifikant gestiegen
SELECT t.Datum,
t.Schicht,
t.Standort,
sum(t.UmsatzSB1) AS UmsatzSB1
FROM (
SELECT left(StationName,patindex('%[0-9]%',StationName)+charindex(' ',right(StationName,len(StationName)-patindex('%[0-9]%',StationName)))-1) AS Standort,
-- Umsätze ab 22.00 Uhr werden der Nachtschicht des nächsten Tages zugerechnet
( CASE
WHEN datepart(hh,[Date]) BETWEEN 22 AND 23
THEN dateadd(day,1,cast([Date] AS DATE))
ELSE cast([Date] AS DATE)
END ) AS Datum,
( CASE
WHEN datepart(hh,[Date]) BETWEEN 22 AND 23
OR datepart(hh,[Date]) BETWEEN 0 AND 5
THEN 'Nacht'
WHEN datepart(hh,[Date]) BETWEEN 6 AND 13
THEN 'Früh'
WHEN datepart(hh,[Date]) BETWEEN 14 AND 21
THEN 'Spät'
ELSE 'Fehler/Zeit'
END ) AS Schicht,
Salesbezeichnung AS UmsatzSB1
FROM "Datenbankname"."dbo"."FirmaSales"
WHERE datepart(year,[Date]) = 2015
AND StationName LIKE 'SB [0-9]% %'
) t
GROUP BY t.Datum,t.Schicht,t.Standort
ORDER BY t.Datum,t. Standort,t.Schicht
... Folge deiner falsch gewählten Datentypen. Du kannst aber auch nach dem Resultat einer Funktion sortieren, zumindest kann PG das. Damit könnte man sogar solche Designfehler ausmerzen ...Strukturierung ist zwar etwas wild (er zählt 1, 10, 11 ... , 2, 20) aber das ist ...