시계열 데이터 다루기: 날짜 및 시간 관련 함수의 활용
2023. 11. 14. 20:28ㆍ개발 문서/SQL
728x90
반응형
시계열 데이터는 특정 시간에 따라 기록된 데이터로, 날짜 및 시간 관련 함수를 사용하여 이러한 데이터를 쿼리하고 처리할 수 있습니다. 아래는 일반적으로 사용되는 몇 가지 날짜 및 시간 관련 함수와 그 활용 예제입니다.
1. 날짜 및 시간 함수:
a. 현재 날짜 및 시간 가져오기:
SELECT CURRENT_DATE; -- 현재 날짜
SELECT CURRENT_TIME; -- 현재 시간
SELECT CURRENT_TIMESTAMP; -- 현재 날짜 및 시간
b. 날짜 및 시간 포맷 변경:
SELECT TO_CHAR(CURRENT_DATE, 'YYYY-MM-DD'); -- 날짜를 원하는 포맷으로 변경
SELECT TO_CHAR(CURRENT_TIMESTAMP, 'YYYY-MM-DD HH24:MI:SS'); -- 날짜 및 시간을 원하는 포맷으로 변경
2. 날짜 및 시간 연산:
a. 날짜 더하기 및 빼기:
SELECT CURRENT_DATE + INTERVAL '7 days'; -- 현재 날짜에서 7일 후
SELECT CURRENT_DATE - INTERVAL '1 month'; -- 현재 날짜에서 1달 전
b. 날짜 간 차이 계산:
SELECT AGE('2023-01-01'::DATE, '2022-01-01'::DATE); -- 두 날짜 간의 차이 계산
3. 필터링 및 정렬:
a. 특정 날짜 범위 필터링:
SELECT * FROM your_table
WHERE date_column BETWEEN '2022-01-01' AND '2022-12-31';
b. 날짜에 따라 정렬:
SELECT * FROM your_table
ORDER BY date_column DESC; -- 날짜를 내림차순으로 정렬
4. 그룹화 및 집계:
a. 월별 데이터 그룹화:
SELECT EXTRACT(MONTH FROM date_column) AS month,
COUNT(*) AS count
FROM your_table
GROUP BY month
ORDER BY month;
b. 날짜별 집계:
SELECT date_column, AVG(value_column) AS average_value
FROM your_table
GROUP BY date_column
ORDER BY date_column;
5. 시간대 관련 함수:
a. 타임존 변환:
SELECT your_timestamp AT TIME ZONE 'UTC' AS utc_timestamp
FROM your_table;
b. 특정 타임존에서의 현재 시간:
SELECT CURRENT_TIMESTAMP AT TIME ZONE 'America/New_York';
이러한 함수들은 데이터베이스 시스템에 따라 약간의 차이가 있을 수 있습니다. PostgreSQL, MySQL, SQL Server 등의 데이터베이스에서는 유사한 기능을 제공하지만 구문이나 함수명이 조금 다를 수 있습니다. 사용 중인 데이터베이스 시스템의 공식 문서를 참고하여 정확한 구문을 확인하는 것이 좋습니다.
'개발 문서 > SQL' 카테고리의 다른 글
데이터베이스 설계 시 ACID 적용 유무의 중요성 (0) | 2025.03.15 |
---|---|
NoSQL과 RDB의 차이점 완벽 정리 (0) | 2025.03.15 |
데이터베이스 관리 시스템 비교: MySQL, PostgreSQL, SQL Server 등의 특징과 선택 가이드 (1) | 2023.11.14 |
데이터베이스 성능 최적화: 쿼리 최적화 및 실행 계획 분석 (1) | 2023.11.14 |
데이터베이스 백업 및 복원: 중요한 정보를 안전하게 보호하기 (0) | 2023.11.13 |