SELECT
CONCAT(QUARTER(DIFFERENTIATION_DATE),'Q') AS QUARTER,
COUNT(*) AS ECOLI_COUNT
FROM
ECOLI_DATA
GROUP BY
QUARTER
ORDER BY
QUARTER;
SELECT
CONCAT(QUARTER(DIFFERENTIATION_DATE),'Q') AS QUARTER,
COUNT(*) AS ECOLI_COUNT
FROM
ECOLI_DATA
GROUP BY
QUARTER(DIFFERENTIATION_DATE)
ORDER BY
QUARTER(DIFFERENTIATION_DATE);
GROUP BY 절에서 선택되지 않은 열이 SELECT 목록에 있을 때 발생하는 오류라고 합니다.
GROUP BY 결과는 1, 2, 3, 4인데,
SELECT에서는 '1Q', '2Q', '3Q', '4Q'를 찾고 있기 때문이 아닐까 싶습니다.
GROUP BY 에 쓰이는 식과 SELECT에 쓰이는 식이 같아야 합니다.
두 번째 코드 내용을 아래 처럼 바꾸시면 됩니다.
SELECT
CONCAT(QUARTER(DIFFERENTIATIONDATE),'Q') AS QUARTER,
COUNT(*) AS ECOLICOUNT
FROM
ECOLIDATA
GROUP BY
CONCAT(QUARTER(DIFFERENTIATIONDATE),'Q')
ORDER BY
CONCAT(QUARTER(DIFFERENTIATION_DATE),'Q');