회사에서 사용중인 slq 일부 인데 안까먹으려고.... 공부용으로 컬럼 이름은 변경했음.
2020년 12월4일부터 2020년 12월5일 사이 시간을 기준으로 묶어서 컬럼의 값들을 더해줌.
sql :
SELECT
DATE_FORMAT(DATE_TIME, '%H:%i:%s') AS DATE_TIME,
CRSRD.NODE_ID, NAME_name, sum(dataFiled2), TRUNCATE(avg(dataFiled3),0) AS dataFiled3, sum(dataFiled4), TRUNCATE(avg(dataFiled5_String),2),
CASE
WHEN dateFiled5_String IS NULL THEN '알수 없음'
WHEN dateFiled5_String < 5 THEN 'A'
WHEN dateFiled5_String < 10 THEN 'B'
WHEN dateFiled5_String < 15 THEN 'C'
WHEN dateFiled5_String < 20 THEN 'D'
WHEN dateFiled5_String < 25 THEN 'E'
ELSE 'F'
END AS dataFiled5_STR
FROM tableErum1 DBerum1, tableErum2 DBerum2
WHERE DBerum1.NODE_ID = 'N0005'
AND DBerum1.NODE_ID = DBerum2.NODE_ID
AND DATE_TIME >= STR_TO_DATE('2020.12.04 00:00:00', '%Y.%m.%d %H:%i:%s')
AND DATE_TIME < DATE_ADD(STR_TO_DATE('2020.12.05 00:00:00', '%Y.%m.%d %H:%i:%s'), INTERVAL 1 DAY)
GROUP BY DATE_FORMAT(DATE_TIME, '%H:%i:%s')
ORDER BY 1, 2;
결과값은 아래처럼 나옴.
728x90
300x250