Back-End/DB
오라클 날짜별 조회
김검정
2025. 4. 7. 12:09
대부분의 테이블에 날짜 데이터가 등록된 컬럼이 있을 것이다. 날짜별로 그룹화 하여 조회하려면 어떻게 해야할까??
1. TRUNC 함수 사용
TRUNC 함수를 사용하면 날짜별로 잘라낼 수 있다.
* 월 단위로 자르는 예시
SELECT TRUNC(REG_DT, 'MM') AS month_start,
COUNT(*) AS cnt
FROM your_table
GROUP BY TRUNC(REG_DT, 'MM')
ORDER BY month_start;
이 쿼리는 REG_DT의 월의 첫 날(예: 2024-08-01) 기준으로 그룹화하여 각 월에 해당하는 데이터 건수를 보여준다.
2. TO_CHAR 함수 사용
날짜를 원하는 형식(예: 'YYYY-MM')으로 변환하여 그룹화할 수도 있다.
SELECT TO_CHAR(REG_DT, 'YYYY-MM') AS month,
COUNT(*) AS cnt
FROM your_table
GROUP BY TO_CHAR(REG_DT, 'YYYY-MM')
ORDER BY month;
* 만약 REG_DT 컬럼이 문자열 형식이라면, 먼저 TO_DATE 또는 TO_TIMESTAMP 함수를 사용하여 날짜로 변환해야 한다.