SQL
[MSSQL] DATEDIFF() 이용한 Year, Month, Day 날짜 차이 구하기
Jane Kwon
2021. 4. 27. 11:10
반응형
예를 들어, 넷플릭스 서비스를 신청한 고객이 있다.
no user_id service_name start_date end_date
0001 janes netflix 2021-03-27 23:59:59.000 2022-06-27 23:59:59.000
그 고객이 서비스가 끝나는 날로부터 며칠이 남았는지
remaining 컬럼을 추가로 알고 싶다. (오늘은 2021년 4월 27일)
SELECT *, DATEDIFF(DAY, GETDATE(), end_date) AS remaining FROM SERVICE_TABLE WHERE no = 0001
no user_id service_name start_date end_date remaining
0001 janes netflix 2021-03-27 23:59:59.000 2022-06-27 23:59:59.000 426
너무 많은 날이 남아서 몇 달이 남았는지 알고 싶다.
SELECT *, DATEDIFF(MONTH, GETDATE(), end_date) AS remaining FROM SERVICE_TABLE WHERE no = 0001
no user_id service_name start_date end_date remaining
0001 janes netflix 2021-03-27 23:59:59.000 2022-06-27 23:59:59.000 14
마지막으로 고객이 서비스 만료일로부터 몇 년이 남았는지 알고 싶다
SELECT *, DATEDIFF(YEAR, GETDATE(), end_date) AS remaining FROM SERVICE_TABLE WHERE no = 0001
no user_id service_name start_date end_date remaining
0001 janes netflix 2021-03-27 23:59:59.000 2022-06-27 23:59:59.000 1
(참고 : www.mssqltips.com/sqlservertip/6218/update-only-year-month-or-day-in-a-sql-server-date/mirwebma.tistory.com/178)
반응형