반응형
🔍 요약: MS-SQL의 DATEDIFF 함수를 활용해 날짜 간격을 쉽게 계산해보세요. 일, 월, 시간 단위까지 실무에 바로 적용 가능한 예제로 정리했습니다.
쿼리 작성시 두 날짜 사이의 차이를 구해야 하는 경우가 자주 있습니다. MS-SQL에서는 이런경우 사용하는 함수가 DATEDIFF 입니다. 두 날짜(시간) 사이의 차이를 기준 단위(년,월,일,시,분,초)로 계산해 주는 아주 유용한 함수에요.
주차장의 입/출차 시간으로 주차시간 계산, 생년월일로 현재 나이계산, 도서관에서 대여/반납 일자를 이용하여 대여기간 계산등 아주 다양한 분야에서 다양한 방법으로 사용되는 함수이니 만큼 꼭 숙지하시길 바래요.
1. DATEDIFF 함수 기본 문법
DATEDIFF (datepart, startdate, enddate)
- datepart: 차이를 계산할 단위 (예: day, month, year 등)
- startdate, enddate: 비교할 두 날짜 값
2. DATEDIFF 함수 기본 사용 예제
SELECT DATEDIFF(DAY, '2025-01-01', GETDATE()) AS DaysPassed
✅ 2025-01-01부터 오늘까지 며칠이 지났는지 계산합니다.
3. DATEDIFF 함수 datepart 옵션 정리
datepart | 의미 | 예시 결과 |
year | 연도 차이 | 1 |
quarter | 분기 차이 | 2 |
month | 개월 차이 | 3 |
day | 날짜 차이 | 100 |
hour | 시간 차이 | 2400 |
mimute | 분 차이 | 144000 |
second | 초 차이 | 8640000 |
4. DATEDIFF 실무 예제: 회원 가입 경과 일수 계산
테이블 예시
CREATE TABLE Members (
MemberID INT,
Name NVARCHAR(50),
JoinDate DATETIME
);
실습 쿼리
SELECT
Name,
JoinDate,
DATEDIFF(DAY, JoinDate, GETDATE()) AS DaysSinceJoin
FROM Members;
✅ 결과: 각 회원이 가입한 후 경과된 일수가 계산됩니다.
5. DATEDIFF를 WHERE 절에 활용
SELECT *
FROM Orders
WHERE DATEDIFF(DAY, OrderDate, GETDATE()) <= 7;
📌 최근 7일 이내 주문 건만 조회할 수 있습니다.
실무에서 리포트, 알림, 기간 필터링에 매우 유용합니다.
6. DATEDIFF 주의할 점
- DATEDIFF는 경과된 단위의 '수치'만 반환합니다. 예를 들어, 2025-06-05 23:59와 2025-06-06 00:01도 DATEDIFF(DAY, ...)이면 하루 차이로 계산됩니다.
- 시간 단위 계산 시, 정밀도가 필요한 작업에는 DATEDIFF_BIG() 또는 초/분 단위 변환 함수와 병행 사용을 고려하세요.
📝 마무리 정리
- DATEDIFF는 날짜 간격을 수치화하는 강력한 함수로, 실무에서 리포트나 기간 필터링에 자주 사용됩니다.
- 다양한 datepart를 활용해 일, 월, 시간, 초 단위까지 자유롭게 비교할 수 있습니다.
- WHERE, SELECT, HAVING 등 다양한 SQL 문장에서 쉽게 적용 가능합니다.
💬 읽어주셔서 감사합니다.
공감 + 댓글 은 큰 힘이 됩니다.
여러분의 응원은 컨텐츠 제작에 큰 힘이 됩니다! 😊
2025.06.05 - [MS-SQL] - [MS-SQL] DATEADD 함수 사용법 – 날짜 더하고 빼는 실무 활용 예제
[MS-SQL] DATEADD 함수 사용법 – 날짜 더하고 빼는 실무 활용 예제
🔍 요약: MS-SQL DATEADD 함수로 날짜 계산을 손쉽게! 오늘부터 7일 뒤, 3개월 전 등 다양한 날짜 연산을 실무 예제로 정리했습니다. 쿼리를 작성할 때 현재일 부터 한달 전 또는 1주일 후 등과 같이
kjh11225it.tistory.com
반응형
'MS-SQL' 카테고리의 다른 글
[MS-SQL] SUBSTRING, LEFT, RIGHT 함수 완전정복 – 문자열 추출 실무 예제 정리 (0) | 2025.06.09 |
---|---|
MS-SQL에서는 LPAD 없다고요? 직접 구현하는 방법까지 알려드립니다 (0) | 2025.06.08 |
[MS-SQL] DATEADD 함수 사용법 – 날짜 더하고 빼는 실무 활용 예제 (0) | 2025.06.07 |
[MS-SQL] CASE 문 완전정복 – 조건 분기로 실무 SQL 마스터하기 (1) | 2025.06.05 |
[MS-SQL] CONVERT 함수 완벽 이해하기 – 실습 예제와 함께 배우는 변환 함수 (0) | 2025.06.05 |