티스토리 뷰
반응형
예를 들어, 넷플릭스 서비스를 신청한 고객이 있다.
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)
반응형
'SQL' 카테고리의 다른 글
[MSSQL] ROW_NUMBER()을 이용한 그룹내 최상위 데이터 출력 (0) | 2021.05.28 |
---|---|
[MSSQL] 조건문 CASE 사용 (0) | 2021.04.27 |
[MSSQL] DATEADD() 이용한 Year, Month, Day 업데이트 (0) | 2021.04.22 |
[MSSQL] 테이블 데이터 삭제 (0) | 2021.03.05 |
[MSSQL] 테이블 데이터 수정 (0) | 2021.03.05 |