[SQL] 시간 다루기

박경국·2022년 5월 6일
0

SQL

목록 보기
8/14
post-thumbnail

TIL

  • sql 날짜 함수

기본 날짜 계산 함수

  1. DATEDIFF
  • DATEDIFF(날짜 a, 날짜 b)를 사용하여 두 날짜의 차이를 계산
  • 현재 날짜에서 생일을 뺀 날짜를 계산함
  • 'CURDATE()'를 사용하면 오늘 날짜를 구할 수 있음
SELECT id, name, birthday, DATEDIFF(CURDATE(), birthday) FROM user;
  • 가입한 날짜에서 생일을 빼고 365로 나누면 유저의 가입 당시의 나이를 알 수 있음
SELECT id, name, birthday, DATEDIFF(sign_up_day, birthday) / 365 
FROM user;
  1. DATE_ADD() / DATE_SUB()
  • 특정 날짜를 기준으로 원하는 기간을 더하고 뺄 수 있음
  • 가입일로부터 300일을 더한 날짜를 컬럼으로 반환함
SELECT id, name, birthday, DATE_ADD(sign_up_day, INTERVAL 300 DAY) 
FROM user;
  • 가입일로부터 300일을 뺀 날짜를 컬럼으로 반환함
SELECT id, name, birthday, DATE_SUB(sign_up_day, INTERVAL 300 DAY) 
FROM user;
  1. UNIX Timestamp
  • UNIX 시간은 1970년 1월 1일을 기준으로 총 몇 초가 지났는지 나타낸 값
  • UNIX_TIMESTAMP 함수를 쓰면 연월시를 UNIX 타임으로 바꿀 수 있음
  • UNIX 시간으로 표현된 timestamp는 FROM_UNIXTIME 함수를 써서 형태를 바꿀 수 있음
SELECT id, name, birthday, FROM_UNIXTIME(UNIX_TIMESTAMP(brithday)) FROM user;

0개의 댓글