PostgreSQL의 AT TIME ZONE은 같은 표현이라도 입력 타입에 따라 반대 방향으로 작동한다. 공식 문서에 따르면 시간대 없는 timestamp에는 지정한 지역의 시간을 가정해 시간대 있는 값을 만들고, timestamptz에는 해당 지역의 시각을 나타내는 시간대 없는 값을 반환한다. 따라서 timestamptz에 UTC를 적용하는 것은 단순히 표시 시간대만 바꾸는 연산이 아니다. 소개된 개인 글의 본문은 확보하지 못했지만 핵심 타입 변환은 공식 명세에서 확인했으며, 후속 비교와 저장 단계에서도 타입을 살펴야 한다.
Tech로 돌아가기
Tech
Postgres의 AT TIME ZONE은 반환 타입도 바꾼다
시간대 변환을 화면 표시 옵션으로만 생각하면 저장과 후속 계산에서 의미가 달라질 수 있다.