이 계산기의 기능
두 날짜 사이 일수 계산기는 한 날짜와 다른 날짜가 며칠이나 떨어져 있는지 정확하게 알려줍니다. 마감일까지 남은 날짜를 세거나, 프로젝트 기간을 산정하거나, 나이를 일수로 환산하거나, 통지 기간(notice period)을 관리하거나, "그게 얼마나 오래전이었지?" 하는 사소한 궁금증을 풀 때까지 두루 활용할 수 있습니다. 결과는 일(day) 단위의 정수로 표시되며, 달마다 다른 날수와 윤년까지 자동으로 반영하므로 더 이상 달력을 보며 손으로 세지 않아도 됩니다.
두 가지 입력값
입력할 정보는 단 두 가지뿐입니다.
- 시작일 — 기준이 되는 더 이른(첫 번째) 날짜입니다.
- 종료일 — 측정 대상이 되는 더 늦은(두 번째) 날짜입니다.
두 날짜 모두 연-월-일(ISO) 형식으로 입력합니다. 예를 들면 2024-01-15 와 같이 적으면 됩니다.
계산 공식
계산기는 입력한 두 값을 달력상의 날짜로 인식한 뒤, 다음과 같은 간단하고 정확한 규칙으로 차이를 구합니다.
두 날짜 사이 일수 = 종료일 − 시작일
내부적으로는 시작일부터 종료일까지 완전한 하루의 개수를 셉니다. 이때 시작일은 포함하지 않고 종료일은 포함합니다. 다시 말해 거쳐 간 날짜의 개수가 아니라 두 날짜 사이의 '간격'을 잰다는 뜻입니다. 만약 종료일이 시작일보다 빠르면 결과가 음수로 나오는데, 이는 종료일이 시작일보다 앞선다는 것을 알려줍니다.
실제 예시
다음과 같이 입력했다고 가정해 보겠습니다.
- 시작일:
2024-01-01 - 종료일:
2024-12-31
이 경우 계산기는 365일을 반환합니다. 2024년은 윤년이라 2월 29일이라는 하루가 더 들어가지만, 1월 1일부터 12월 31일까지 세면 간격은 365일이 됩니다(1월 1일부터 이듬해 1월 1일까지라면 366일입니다). 이렇게 윤년을 자동으로 처리해 주는 점이 바로 계산기가 손으로 세는 것보다 나은 이유입니다.
일수를 주, 개월, 연 단위로 변환하기
두 날짜 사이의 일수를 알면 그 값을 대략적인 주, 개월, 연 단위로 변환할 수 있습니다. 주는 정확하지만(1주 = 7일), 개월과 연은 길이가 달라지므로 이러한 변환은 근사치입니다. 아래 값들은 약 30.44일의 평균 월과 365.25일의 평균 연(윤년을 고려한 값)을 사용합니다.
| 일 | 주 | 개월(근사치) | 연(근사치) |
|---|---|---|---|
| 7 | 1 | 0.23 | 0.02 |
| 30 | 4.29 | 0.99 | 0.08 |
| 90 | 12.86 | 2.96 | 0.25 |
| 180 | 25.71 | 5.91 | 0.49 |
| 365 | 52.14 | 11.99 | 1.00 |
| 730 | 104.29 | 23.98 | 2.00 |
사용된 변환 공식: \(\text{주} = \dfrac{\text{일}}{7}\), \(\text{개월} \approx \dfrac{\text{일}}{30.44}\), \(\text{연} \approx \dfrac{\text{일}}{365.25}\). 달력상의 월은 28일에서 31일까지 다양하고 1년은 365일 또는 366일이 될 수 있으므로, 개월과 연 열은 정확한 값이 아닌 추정치로 다루어야 합니다.
일반적인 날짜 간격 예시
두 날짜 사이의 일수는 \(\text{일} = \text{종료 날짜} - \text{시작 날짜}\)로 계산됩니다. 이는 두 날짜 사이의 간격을 세는 것이며 시작 날짜 자체는 포함하지 않습니다. 시작 날짜와 종료 날짜를 모두 세려면(숙박 일수나 행사 기간 계산에서 흔한 포함 계산), 결과에 1을 더하면 됩니다.
| 시작 날짜 | 종료 날짜 | 일수(미포함) | 비고 |
|---|---|---|---|
| 2023년 1월 1일 | 2023년 12월 31일 | 364 | 같은 평년; 양 끝점을 모두 세려면 1을 더함(365). |
| 2024년 1월 1일 | 2024년 12월 31일 | 365 | 2024년은 윤년이므로 이 기간에 2월 29일이 포함됨. |
| 2023년 1월 1일 | 2024년 1월 1일 | 365 | 정확히 1달력년(평년). |
| 2024년 1월 1일 | 2025년 1월 1일 | 366 | 윤일인 2024년 2월 29일을 포함하는 1달력년. |
| 2023년 1월 15일 | 2023년 2월 15일 | 31 | 1개월 간격; 길이는 해당 월에 따라 다름(1월은 31일). |
| 2023년 2월 15일 | 2023년 3월 15일 | 28 | 1개월 간격; 2023년 2월은 28일. |
| 2024년 3월 10일 | 2024년 3월 10일 | 0 | 같은 날짜는 0일 차이를 반환함. |
위에서 보듯이, ("1개월"이나 "1년"처럼) 똑같아 보이는 기간도 어떤 월을 거치는지와 윤년이 관련되는지에 따라 서로 다른 일수가 나올 수 있습니다. 목적에 따라 포함 계산이 필요한지 미포함 계산이 필요한지 항상 확인하세요.
자주 묻는 질문
결과에 시작일과 종료일이 모두 포함되나요?
아닙니다. 두 날짜 '사이'의 일수를 세므로 종료일은 포함되지만 시작일은 포함되지 않습니다. 만약 양쪽 끝 날짜를 모두 세야 한다면(예: 어딘가에 머문 총 일수), 결과에 1을 더하면 됩니다.
날짜를 반대로 입력하면 어떻게 되나요?
종료일이 시작일보다 빠르면 음수가 나옵니다. 숫자의 크기 자체는 여전히 정확하므로 마이너스 부호만 무시하거나, 두 날짜를 서로 바꿔 입력하면 양수로 표시됩니다.
윤년과 달마다 다른 날수도 반영되나요?
네. 실제 달력 날짜를 기준으로 계산하므로 2월 29일, 30일까지 있는 달, 31일까지 있는 달 모두 별도의 수고 없이 정확하게 반영됩니다.