Programing Language/Sql

SQL 날짜 처리

JHeaon 2024. 5. 13. 09:58

 

 

이번에는 SQL을 통해 날짜를 처리하는 방식에 대해서 다뤄보고자 한다. 

 


날짜 출력 (DATE_FORMAT)

SQL에서는 날짜를 다루는 포맷 함수를 제공한다. 

select date(date) date_type,
       date
from payments

 

해당 데이터 포맷을 다루기 위해서는 아래 조건을 사용하면 된다.

  • 년 : Y (4자리), y(년도 끝 2자리)
  • 월 : M, m
  • 일 : d, e
  • 요일 : w
select date(date) date_type,
       date_format(date(date), '%Y') "년",
       date_format(date(date), '%m') "월",
       date_format(date(date), '%d') "일",
       date_format(date(date), '%w') "요일"
from payments

 

 

 

 

 

 

 

날짜 덧셈, 뺄셈 (DATE_ADD, DATE_SUB)

 

날짜를 더하고 뺄 때에는 DATE_ADD, DATE_SUB 함수를 사용한다. 

DATE_ADD(기준 날짜, INTERVAL)
DATE_SUB(기준 날짜, INTERVAL)

 

예를 들어 현재 시간에서 초, 분, 시간, 달, 년 을 더해서 처리하고 싶다면 아래와 같이 처리한다. 

SELECT DATE_ADD(NOW(), INTERVAL 1 SECOND);
SELECT DATE_ADD(NOW(), INTERVAL 1 MINUTE);
SELECT DATE_ADD(NOW(), INTERVAL 1 HOUR);
SELECT DATE_ADD(NOW(), INTERVAL 1 DAY);
SELECT DATE_ADD(NOW(), INTERVAL 1 MONTH);
SELECT DATE_ADD(NOW(), INTERVAL 1 YEAR);

 

 

 

 

 

 

날짜 비교 (DATEDIFF)

두 날짜를 비교하고 싶을 때에는 datediff()함수를 이용한다. 

주의해야 할 점은 첫 번째 인수에 끝 날짜, 두 번째 인수에는 시작 날짜가 와야 한다. 

DATEDIFF(END_DATE, START_DATE)

 

'Programing Language > Sql' 카테고리의 다른 글

SQL 숫자 처리  (0) 2024.05.13
SQL 정리  (0) 2024.05.08

'Programing Language/Sql'의 다른글

  • 현재글 SQL 날짜 처리

관련글