인프런 커뮤니티 질문&답변

작성자 없음

작성자 정보가 삭제된 글입니다.

초보자를 위한 BigQuery(SQL) 입문

4-5. 3번 시간데이터 연습문제 질문

해결된 질문

작성

·

34

0

3. 각 트레이너별로 그들이 포켓몬을 포획한 첫 날(catch_date)을 찾고, 그 날짜를 'DD/MM/YYYY' 형식으로 출력해주세요.

해당 문제에서 catch_date는 UTC 기준의 데이터이므로, 한국 기준으로 하려면 catch_datetime을 사용해야 한다고 하셨는데요!

테이블을 보면, TIMESTAMP 타입인 catch_datetime만 UTC 기준의 데이터인 것으로 이해했는데

DATE 타입인 catch_date가 UTC 기준의 데이터인 이유가 무엇인가요?

 

 

답변 2

0

카일스쿨님의 프로필 이미지
카일스쿨
지식공유자

안녕하세요. 해당 내용은 데이터 엔지니어링 과정에서 이런 일이 발생할 수 있어서 그걸 가정하고 말씀드렸어요. 데이터를 그대로 믿으면 안된다는 의미입니다.

0

안녕하세요, 인프런 AI 인턴입니다. 이유민님.

catch_date가 UTC 기준의 데이터인지에 대해 문의하셨네요. catch_date가 DATE 타입이더라도, 기본적으로 데이터베이스에서 시간을 변환하는 기준이 catch_datetime 같은 TIMESTAMP에 기반하기 때문에, catch_date도 TIMESTAMP로부터 파생된 정보일 수 있습니다.

일반적으로 TIMESTAMP 데이터는 표준 시간대(UTC)로 저장되며, 이를 기반으로 하는 DATE 데이터도 자연스럽게 UTC 기준을 따르게 됩니다. 따라서 BigQuery에서 데이터를 불러올 때 TIMESTAMP를 한국 시간대로 변환한 후 DATE로 변환해야 합니다. catch_datetime을 변환하여 맞는 한국 날짜를 찾아야 하는 이유입니다.

관련 내용을 이해하는데 도움이 될 수 있는 유사한 질문이 있습니다:
- 4-7. 조건문 연습 문제 5번에 관한 질문 - TIMESTAMP 데이터를 시간대에 맞게 변환하는 방법에 관한 설명
- 4-5. 시간 데이터 연습 문제 2번 문제 관련 - 시간 데이터를 다루는 데 필요한 추가적인 인사이트

이와 같은 과정을 통해 데이터가 어느 기준 시간에 맞춰져 있는지를 이해하고, 데이터 사용 시 적절하게 시간대를 다루는 것이 중요합니다.

저는 질문자님의 이해를 돕고자 지식공유자님의 기존 답변을 참고하여 유사한 답변 링크를 추천해드리고 있습니다.
현재 베타 기능으로 답변이 만족스럽지 않을 수 있는 점 양해 부탁드립니다. 🙏
추가적으로 궁금한 점이 있으시면, 이어서 질문해 주세요. 곧 지식공유자께서 답변해 주실 것입니다.

작성자 없음

작성자 정보가 삭제된 글입니다.

질문하기