Contents
내가 작성한 쿼리
내가 작성한 쿼리
Oracle
SELECT
CONCAT(CASE
WHEN MONTH(DIFFERENTIATION_DATE) <= 3 THEN 1
WHEN MONTH(DIFFERENTIATION_DATE) <= 6 THEN 2
WHEN MONTH(DIFFERENTIATION_DATE) <= 9 THEN 3
ELSE 4
END, 'Q') AS QUARTER,
COUNT(ID) AS ECOLI_COUNT
FROM ECOLI_DATA
GROUP BY
CONCAT(CASE
WHEN MONTH(DIFFERENTIATION_DATE) <= 3 THEN 1
WHEN MONTH(DIFFERENTIATION_DATE) <= 6 THEN 2
WHEN MONTH(DIFFERENTIATION_DATE) <= 9 THEN 3
ELSE 4
END, 'Q')
ORDER BY QUARTER;MySQL
SELECT
CONCAT(CASE WHEN MONTH(DIFFERENTIATION_DATE) <= 3 THEN 1
WHEN MONTH(DIFFERENTIATION_DATE) <= 6 THEN 2
WHEN MONTH(DIFFERENTIATION_DATE) <= 9 THEN 3
ELSE 4
END,'Q') AS QUARTER,
COUNT(ID) AS ECOLI_COUNT
FROM ECOLI_DATA
GROUP BY QUARTER
ORDER BY QUARTER차이점
GROUP BY에서 별칭사용 가능의 여부MySQL- 쿼리 최적화를 위해,
GROUP BY절에서 사용되는 별칭을 처리할 때SELECT구문과 같은 방식으로 해석 →MySQL은GROUP BY를 처리할 때 별칭을 먼저 계산하고 이를 기반으로 그룹화 작업을 수행할 수 있도록 허용 - 다른 RDBMS에서는 동작하지 않을 수 있음
Oracle: 불가 → 직접 명시
Share article