24. [SQL 코테] - timestampdiff

Jason·2026년 1월 15일

SQL

목록 보기
23/47

[SQL 코테] TIMESTAMPDIFF 완전 정복 🔥

🚨 핵심 포인트 (시험 전 필독!)

1. TIMESTAMPDIFF(단위, 시작일, 종료일) = 종료일 - 시작일
2. DATEDIFF랑 순서 반대! 헷갈리지 말기!
3. WEEK는 "캘린더 주차" 아님! 그냥 일수 ÷ 7

📝 기본 문법

TIMESTAMPDIFF(단위, 시작일, 종료일)

종료일 - 시작일 계산!


💡 단위 옵션

단위의미
YEAR
QUARTER분기 (3개월)
MONTH
WEEK
DAY
HOUR시간
MINUTE
SECOND

📊 예시

-- 2024-01-01 ~ 2024-03-15

TIMESTAMPDIFF(YEAR, '2024-01-01', '2024-03-15')0
TIMESTAMPDIFF(MONTH, '2024-01-01', '2024-03-15')2
TIMESTAMPDIFF(WEEK, '2024-01-01', '2024-03-15')10
TIMESTAMPDIFF(DAY, '2024-01-01', '2024-03-15')73

🧮 내부 계산 방식

WEEK 계산 예시:

2024-01-01 ~ 2024-03-15

1월: 31일 + 2월: 29일 + 3월: 15일 - 1 = 74일
74 ÷ 7 = 10.57...
→ 소수점 버림 → 10주!
단위계산 방식
DAY그대로 일수
WEEK일수 ÷ 7 (소수점 버림)
MONTH실제 월 차이
YEAR실제 연도 차이

⚠️ DATEDIFF vs TIMESTAMPDIFF 순서 비교

함수순서결과
DATEDIFF(A, B)A - B일수
TIMESTAMPDIFF(단위, A, B)B - A단위별 차이

순서 반대라서 헷갈림 주의!


⚠️ WEEK는 캘린더 주차 아님!

TIMESTAMPDIFF(WEEK, ...)

→ "1월 1주차, 3월 2주차" 개념 ❌
→ 그냥 총 일수 ÷ 7

캘린더 주차 원하면:

WEEK(date)      -- 그 해의 몇 번째 주
YEARWEEK(date)  -- 202401, 202402... 형태

채널톡 DA 인턴 코테 준비 중 정리한 내용입니다 🚀

profile
Data Analyst | Thoughts Become Things. 할 수 있다고 생각하면 할 수 있다. 할 수 없다고 생각하면 할 수 없다. | www.linkedin.com/in/명수-제-7ab843200

0개의 댓글