Ich versuche, die Anzahl der Treffer für einen bestimmten Betreiber als Summe für eine Woche zu zählen, dann jeden TagSQL Server 2008 Count in Case-Anweisung gleiches Ergebnis ergeben mit unterschiedlichen Parametern
kann ich die declare hinzufügen und wählen Sie Anweisung für die Variablen, wenn nötig, aber sie haben den gewünschten Effekt mit einer ähnlichen Summenfunktion, so dass dies unnötig erscheint.
Ich bekomme jeden Tag das gleiche Ergebnis, was der gesamten Woche entspricht - nicht der gewünschte Effekt. Kann irgendjemand etwas darüber sagen, warum die zwischen-Aussagen scheinbar ignoriert werden?
SELECT HITS.OPPO
, COUNT(CASE WHEN STOP_TIME BETWEEN @StartMinSix and @TodayEnd THEN 1 ELSE 0 END) AS 'COUNT_TOTAL'
, COUNT(CASE WHEN STOP_TIME BETWEEN @TodayDate and @TodayEnd THEN 1 ELSE 0 END) AS 'COUNT_TODAY'
, COUNT(CASE WHEN STOP_TIME BETWEEN @StartMinOne and @TodayDate THEN 1 ELSE 0 END) AS 'COUNT_YESTERDAY'
, COUNT(CASE WHEN STOP_TIME BETWEEN @StartMinTwo and @StartMinOne THEN 1 ELSE 0 END) AS 'COUNT_TODAY_MIN2'
, COUNT(CASE WHEN STOP_TIME BETWEEN @StartMinThree and @StartMinTwo THEN 1 ELSE 0 END) AS 'COUNT_TODAY_MIN3'
, COUNT(CASE WHEN STOP_TIME BETWEEN @StartMinFour and @StartMinThree THEN 1 ELSE 0 END) AS 'COUNT_TODAY_MIN4'
, COUNT(CASE WHEN STOP_TIME BETWEEN @StartMinFive and @StartMinFour THEN 1 ELSE 0 END) AS 'COUNT_TODAY_MIN5'
, COUNT(CASE WHEN STOP_TIME BETWEEN @StartMinSix and @StartMinFive THEN 1 ELSE 0 END) AS 'COUNT_TODAY_MIN6'
FROM HITS
WHERE HITS.OPPO = @operator
and STOP_TIME > @StartMinSix
and ESTIMATED_COST > 0
GROUP BY HITS.OPPO
Versuchen Sie, die Anzahl zu addieren. –
Gut gespielt Herr - wenn Sie dies als eine Antwort setzen, werde ich akzeptieren. Vielen Dank. – User632716
Sie zählen, wie viele 0 und 1 Sie haben, wenn Sie kryptisch sein wollen, ändern Sie die 0 zu Null – Cato