UTC 오프셋을 구하려면 해당하는 현지 날짜와 시각에서 UTC 날짜와 시각을 빼고, 날짜 변경도 반영합니다. Mac용 Numbers에서는 이름이 지정된 시간대를 선택하지 않고도 이를 분 단위로 계산할 수 있습니다.
이 안내서는 게시 시각을 이에 해당하는 UTC 시각과 대조하려는 사람을 위한 것입니다. 아래의 모든 게시 날짜는 합성 데이터입니다. 목표는 해당 게시 순간의 오프셋을 구하고, 증거가 뒷받침하는 내용을 기록하는 것입니다.
계산 전에 어떤 정보가 필요한가요?
같은 게시 순간을 나타내는 두 가지 표현이 필요합니다. 완전한 현지 날짜와 시각, 그리고 완전한 UTC 날짜와 시각입니다. 둘 다 게시 시점을 나타내는지 확인하세요. 한쪽은 게시 시점이고 다른 쪽은 이후 편집 시점일 수 있습니다. 두 값의 연관성을 먼저 확인해야 합니다. 그럴듯한 숫자 차이만으로 두 값이 서로 대응한다고 입증할 수는 없습니다.
다음 네 가지 개념을 구분하세요.
| 개념 | 합성 예시 | 의미 |
|---|---|---|
| 민간 날짜 | 2026-07-01 |
시각이나 UTC와의 관계가 없는 달력 날짜 |
| 현지 날짜와 시각 | 2026-07-01 05:25:00 |
특정 순간을 식별하려면 여전히 오프셋이나 시간대가 필요한 달력 및 시계 필드 |
| 순간 | 2026-06-30T23:40:00Z |
UTC로 표현한 특정 시점 |
| UTC 오프셋 | +05:45 |
해당 순간에 현지 시계가 UTC와 차이 나는 정도 |
| 이름이 지정된 시간대 | 제공된 IANA 시간대 식별자 | 여러 순간의 오프셋을 결정하기 위한 규칙 집합 |
Apple은 Foundation에서도 비슷하게 구분합니다. Date는 달력이나 시간대와 독립적인 시점을 나타내고, DateComponents는 달력과 시간대로 해석되는 달력 필드를 나타냅니다. 따라서 표시된 날짜 문자열과 순간은 서로 다른 종류의 입력입니다. Apple: 날짜와 시각
이 워크시트에서는 00부터 59까지의 유효한 그레고리력 날짜와 초 단위 값을 사용하세요. 원본 타임스탬프 문자열은 계산 결과와 함께 보관하세요. 어느 한쪽 출처에 날짜만 있거나 날짜 없이 시각만 있다면 정확한 오프셋을 계산하기 전에 누락된 정보를 확보하세요.
오프셋 계산은 어떻게 작동하나요?
RFC 3339는 부호 규칙을 현지 시각에서 UTC를 뺀 값으로 정의합니다. 양수 결과는 현지 시계가 앞서 있음을, 음수 결과는 뒤처져 있음을 뜻합니다. 현지 날짜와 시각에서 오프셋을 빼면 UTC를 구할 수 있습니다. RFC 3339, 4.2절
첫 번째 합성 게시 시각의 쌍은 다음과 같습니다.
- UTC:
2026-06-30T23:40:00Z - 현지 시각:
2026-07-01 05:25:00 - 차이: 5시간 45분 앞섬
- 구한 오프셋:
+05:45
현지 날짜는 하루 뒤입니다. 시계만 비교하면 잘못된 음수 차이가 나옵니다. 분 단위로 명시적으로 계산하면 날짜가 중요한 이유를 알 수 있습니다.
offset_minutes = 1440 × calendar_day_difference
+ local_clock_minutes
- UTC_clock_minutes
calendar_day_difference = +1
local_clock_minutes = 5 × 60 + 25 = 325
UTC_clock_minutes = 23 × 60 + 40 = 1420
offset_minutes = 1440 + 325 - 1420 = 345
345 minutes = 5 hours 45 minutes
여기서 달력 일수 차이는 전체 날짜 간의 차이를 뜻합니다. 날짜의 일 숫자만 빼지 마세요. 7월 1일에서 6월 30일을 빼면 하루 차이입니다. 1 - 30은 음수지만 그렇습니다. 아래 워크시트에서는 날짜 계산이 월 경계를 처리합니다.
Mac용 Numbers에서 어떻게 계산하나요?
Numbers가 설치되어 있고 표 하나가 포함된 스프레드시트가 필요합니다. 예시에서는 영어 함수 이름과 쉼표 구분자를 사용합니다. 수식 편집기에서 다른 구분자를 요구하면 함수 브라우저를 통해 함수를 삽입하고 인수 필드를 채우세요.
1. 열에 알아보기 쉬운 이름 붙이기
1행에 다음 이름을 사용하세요. A1에는 UTC 필드, B1에는 현지 필드, C1에는 오프셋(분), D1에는 재구성한 UTC를 입력합니다. 이 이름은 입력값을 설명합니다. A열에 날짜를 입력한다고 해서 시간대 변환이 자동으로 수행되는 것은 아닙니다.
A열과 B열을 선택한 다음 포맷 사이드바, 셀 탭, 데이터 포맷 메뉴에서 날짜 및 시간을 선택하세요. 초를 포함해 날짜와 시각 전체가 표시되는 형식을 선택하세요. Apple의 Numbers 셀 포맷 지정 안내서에서 이 제어 방법을 설명합니다.
2. 두 값을 명시적으로 구성하기
A2를 클릭하고 다음 수식을 입력하세요. Return을 눌러 확정합니다.
=DATE(2026,6,30)+DURATION(0,0,23,40,0,0)
B2에는 다음을 입력하세요.
=DATE(2026,7,1)+DURATION(0,0,5,25,0,0)
DATE는 연, 월, 일을 별도의 숫자로 받아 모호한 날짜 문자열을 피합니다. DURATION는 주, 일, 시간, 분, 초, 밀리초 순서로 인수를 받습니다. 여기서는 각 날짜에 기간을 더해 시각을 지정합니다. Apple: DATE, Apple: DURATION
A2에 6월 30일 23:40:00, B2에 7월 1일 05:25:00가 표시되는지 확인하세요. 빼기 계산을 위해 달력 필드 두 집합을 나타내는 것입니다. 스프레드시트 셀의 표시만으로 UTC 여부를 판단하지 말고, 원본 메모에 UTC 접미사를 그대로 보관하세요.
3. 현지 시각에서 UTC 빼기
C2에 다음을 입력하세요.
=DUR2MINUTES(B2-A2)
예상 결과는 345입니다. 날짜와 시각 값을 빼면 기간이 나오고, DUR2MINUTES은 그 기간을 분 단위 숫자로 나타냅니다. 필요한 경우 C2의 데이터 포맷을 숫자로 설정하세요. Apple: DUR2MINUTES
수식을 입력하거나 확인하려면 셀을 선택하고 =을 입력하세요. Numbers가 수식 편집기를 엽니다. 수식에 오류가 표시되면 오류 표시기를 클릭해 설명을 확인한 다음 진행하세요. Mac용 Numbers에서 표 셀의 데이터를 사용하여 값 계산하기
4. 부호가 있는 오프셋을 적고 결과 확인하기
분의 절댓값을 정수 시간과 남은 분으로 변환하세요. 345의 경우 5시간 45분입니다. 결과가 양수이므로 +05:45로 기록하세요. 결과가 -210이면 -03:30가 됩니다. 부호는 오프셋 전체에 적용됩니다.
D2에 역산 수식을 입력하세요.
=B2-DURATION(0,0,0,C2,0,0)
D2를 날짜 및 시간으로 설정해 두 요소가 모두 표시되게 하세요. A2와 같은 날짜와 시각이 표시되어야 합니다. 이를 통해 계산 방향과 재구성 결과를 확인할 수 있습니다. 원래 입력값이 같은 게시 시점을 나타낸다는 사실까지 독립적으로 입증해 주지는 않습니다.
날짜와 부호 실수를 찾아내려면 어떤 예시를 사용해야 하나요?
해석을 확인하려면 다음 합성 데이터 쌍을 사용하세요. 추가 행마다 DATE와 DURATION을 사용해 A와 B를 구성한 다음, 빼기 수식에 해당 행의 셀 참조를 사용하세요.
| UTC 게시 타임스탬프 | 이에 해당하는 현지 필드 | 오프셋(분) | 오프셋 |
|---|---|---|---|
2026-06-30T23:40:00Z |
2026-07-01 05:25:00 |
345 | +05:45 |
2026-07-01T02:15:00Z |
2026-06-30 22:45:00 |
-210 | -03:30 |
2026-08-31T23:30:00Z |
2026-09-01 01:30:00 |
120 | +02:00 |
두 번째 쌍은 현지 날짜가 이전 날로 넘어갑니다. 세 번째 쌍은 정시 오프셋으로 월 경계를 넘습니다. 함께 확인하면 빼기 순서를 뒤집거나 날짜를 누락하는 실수, 오프셋이 정수 시간이어야 한다는 가정을 찾아내는 데 도움이 됩니다.
소수점 이하 자릿수를 충분히 표시해 분 단위 소수 결과를 알아볼 수 있게 하세요. 입력값이 초 단위 정수인데 예상치 못한 소수 결과가 나오면 원인을 조사해야 합니다. 초, 입력 정밀도, 레코드가 실제로 서로 대응하는지 확인하세요. 익숙한 오프셋을 만들려고 결과를 반올림해 없애지 마세요. RFC 3339의 숫자 오프셋은 분 단위 정밀도를 사용하므로 초 단위 차이는 HH:MM 오프셋을 붙이는 것만으로 정확히 나타낼 수 없습니다. RFC 3339, 4.2절
이름이 지정된 시간대를 하나로 특정할 수 없는 이유는 무엇인가요?
오프셋은 한 시점에서의 관계를 나타냅니다. 이름이 지정된 시간대는 다른 시점의 관계를 결정하는 규칙을 제공합니다. RFC 9557은 이 개념들을 명시적으로 구분하고, 하루 뒤의 같은 현지 시각을 찾는 등의 현지 달력 연산에는 오프셋만으로 부족한 이유를 설명합니다. 따라서 오프셋이 일치한다고 해서 이름이 지정된 시간대 하나를 특정할 수는 없습니다. RFC 9557: 시간대 정의
결과를 “구한 게시 오프셋: +05:45; 이름이 지정된 시간대: 알 수 없음”으로 기록하세요. 나중에 출처에서 시간대 식별자를 확보하면 별도로 보관하세요. 게시 데이터 쌍을 더 확인하면 추가 오프셋을 알아낼 수 있지만, 일치하는 항목을 선택하는 것만으로 시간대를 정하려면 충분한 근거가 되지 않습니다.
Apple API도 이 계산 방향을 따릅니다. TimeZone.secondsFromGMT(for:)는 기존 시간대와 날짜를 받아 해당 오프셋을 계산합니다. 날짜 인수의 기본값은 현재 날짜이므로 게시 시점을 확인하려면 게시 순간을 지정해야 합니다. 이 메서드는 오프셋을 받아 원래의 이름이 지정된 시간대를 반환하지 않습니다. Apple: secondsFromGMT(for:)
언제 계산을 멈추고 더 나은 입력값을 확보해야 하나요?
결과를 받아들이기 전에 다음 순서대로 확인하세요.
- 민간 날짜만 있음: 시각과 UTC 기준값을 확보하세요. 날짜만으로는 순간을 식별할 수 없습니다.
- 기준값에 0이 아닌 숫자 오프셋이 있음: 이 워크시트에 사용하기 전에 명시된 오프셋을 이용해 UTC로 변환하세요.
- 두 입력값이 이미 순간으로 변환됨: 원래의 현지 필드를 보관하거나 다시 가져오세요. 같은 순간을 정규화한 두 표현끼리 빼면 결과는 0입니다.
- 날짜를 표시했을 때 차이가 바뀜: 저장된 값 전체를 확인하세요. 숨겨진 날짜도 계산에 포함됩니다.
- 계산은 되지만 두 값의 짝이 확실하지 않음: 게시 시점의 연관성이 확인될 때까지 후보 차이로 보관하세요.
Numbers는 누락된 구성 요소를 자동으로 넣을 수 있습니다. Apple에 따르면 시각만 입력하면 오늘 날짜가 추가됩니다. 날짜나 시각을 숨기면 표시만 바뀌고 값은 계산에 계속 사용할 수 있습니다. 셀에 보이는 내용만으로 분명하지 않은 부분이 있으면 스마트 셀 보기를 확인하세요. Apple: Mac용 Numbers에서 날짜, 통화 등의 포맷 지정하기
또한 Z로 끝나는 UTC 타임스탬프는 UTC 순간을 확정하지만 원래 현지 시간대를 확정하지는 않습니다. RFC 9557은 알 수 없는 현지 오프셋을 수용하도록 RFC 3339의 Z 처리를 수정합니다. 따라서 이 계산에는 별도의 현지 표현이 꼭 필요합니다. RFC 9557, 2.2절
게시 시점 확인을 마치면 원래의 쌍, 부호가 있는 오프셋, 두 값이 같은 순간을 나타내는 이유를 보관하세요. 이렇게 하면 재현 가능한 결과를 얻으면서도 증거가 특정 시간대를 가리키지 않는 경우 그 시간대는 알 수 없는 상태로 둘 수 있습니다.
출처
RFC 3339: 인터넷상의 날짜와 시각: 타임스탬프 — RFC 편집부
RFC 9557: 인터넷상의 날짜와 시각: 추가 정보를 포함한 타임스탬프 — RFC 편집부
날짜와 시각 — Apple 개발자 문서
secondsFromGMT(for:) — Apple 개발자 문서
Mac용 Numbers에서 날짜, 통화 등의 포맷 지정하기 — Apple 지원
Mac용 Numbers에서 표 셀의 데이터를 사용하여 값 계산하기 — Apple 지원
DATE — Apple 지원
DURATION — Apple 지원
DUR2MINUTES — Apple 지원