특정 테이블의 날짜별 데이터 개수를 추출해야 하는 경우
ex) 23년 12월 1일~5일의 데이터를 날짜별로 카운트해야 한다면
SELECT
*
FROM
(
SELECT count(*) AS d01
FROM SCHEMA.TB_NAME
WHERE TO_CHAR(DATE_COLUMN, 'YYYY-MM-DD') = '2023-12-01'
),
(
SELECT count(*) AS d02
FROM SCHEMA.TB_NAME
WHERE TO_CHAR(DATE_COLUMN, 'YYYY-MM-DD') = '2023-12-02'
),
(
SELECT count(*) AS d03
FROM SCHEMA.TB_NAME
WHERE TO_CHAR(DATE_COLUMN, 'YYYY-MM-DD') = '2023-12-03'
),
(
SELECT count(*) AS d04
FROM SCHEMA.TB_NAME
WHERE TO_CHAR(DATE_COLUMN, 'YYYY-MM-DD') = '2023-12-04'
),
(
SELECT count(*) AS d05
FROM SCHEMA.TB_NAME
WHERE TO_CHAR(DATE_COLUMN, 'YYYY-MM-DD') = '2023-12-05'
)
TB_NAME은 해당 테이블명,
DATE_COLUMN 은 데이터가 들어간 시간을 sysdate로 저장하는 칼럼으로, 날짜와 시간이 같이 저장되어 있다. (ex) 2023-12-01-12.59.59 )
쿼리 실행결과에서 d01,d02,d03,d04,d05 라는 칼럼명으로 각 날짜별 데이터 카운트값을 얻을 수 있다.
더 나은 쿼리가 있겠지만 시간이 부족했다... 나중에 가능하면 고쳐보기
'SQL' 카테고리의 다른 글
[SQL] ORACLE, MySQL 월배치 쿼리 (문자열 컬럼 참조시) (0) | 2025.03.20 |
---|---|
[SQL] DB별 날짜 포맷 텍스트 포맷으로 변환 (Oracle / mySQL / BigQuery) (1) | 2024.09.30 |
[BigQuery] 빅쿼리 테이블 DDL 생성, 컬럼 추출, 뷰 생성 쿼리 (0) | 2024.06.20 |
[PostgreSQL] PostgreSQL 에서 :: (Double colon) 의 의미 (0) | 2024.01.09 |