-
[MSSQL] 두 날짜사이에 날짜별 통계 쿼리WEB/MSSQL 2020. 12. 18. 14:26
[MSSQL] 두 날짜사이에 날짜별 통계 쿼리
GROUP BY를 이용하여 날짜별로 합(SUM)한 결과 출력
WITH A AS (
SELECT '20201125' AS STT_DT
, '20201225' AS END_DT
), B AS (
SELECT CONVERT(NVARCHAR(8), CONVERT(datetime, (SELECT STT_DT FROM A)), 112) AS [DT]
UNION ALL
SELECT CONVERT(NVARCHAR(8),DATEADD(D,1,DT),112) AS [DT]
FROM B
WHERE 1=1
AND dt >= (SELECT STT_DT FROM A)
AND dt <= (SELECT END_DT FROM A)
), C AS (
SELECT '20201125' AS [DT], 150 AS [SAL]
UNION ALL SELECT '20201125' AS [DT], 150 AS [SAL]
UNION ALL SELECT '20201125' AS [DT], 100 AS [SAL]
UNION ALL SELECT '20201126' AS [DT], 400 AS [SAL]
UNION ALL SELECT '20201126' AS [DT], 100 AS [SAL]
UNION ALL SELECT '20201128' AS [DT], 100 AS [SAL]
UNION ALL SELECT '20201128' AS [DT], 350 AS [SAL]
)SELECT TA.DT AS DT
, ISNULL(SUM(TB.SAL), 0) AS SAL
FROM B TA
LEFT OUTER
JOIN C TB
ON TA.DT = TB.DT
GROUP
BY TA.DT
위의 실행 쿼리 결과 'WEB > MSSQL' 카테고리의 다른 글
[MSSQL] 소수점 올림/반올림/절삭 관련 쿼리 (0) 2020.12.31 [MSSQL] 특정 배수만큼 ROW생성 SELECT 쿼리 (0) 2020.12.24 [MSSQL] 두 날짜사이에 모든 날짜 출력 쿼리 (0) 2020.12.17 [MSSQL] RANK를 사용하여 순위 매기기 (0) 2020.12.11 [MSSQL] WHERE절에 LIKE 검색 방법 (0) 2020.12.11