• 카테고리

    질문 & 답변
  • 세부 분야

    데이터 분석

  • 해결 여부

    해결됨

3분 20초 FORMAT_DATE 반환 타입에 관하여

23.11.14 17:14 작성 23.11.14 17:17 수정 조회수 209

1

 [기타 질문]선생님 3분 20초 쯤에, FORMAT_DATE('%Y', date)에 대한 주석 문에 대해서 int형이 아닌 String형으로 표시를 해야 할 것 같습니다.

date between '2022-01-01' and '2022-12-31' -- 2022 
-- date between '2022-01-01' and '2022-12-31' EXTRACT(YEAR FROM date) = 2022 -- 2022 
-- EXTRACT(YEAR FROM date) -> int로 나온다. 
-- EXTRACT(날짜 단위 from 날짜 필드) FORMAT_DATE('%Y', date) = '2022' -- 2022

선생님께서 알려주신 3가지 방법으로 모두 적용해보니,

SELECT EXTRACT(YEAR FROM date), FORMAT_DATE('%Y', date) FROM project.daily_play WHERE (EXTRACT(YEAR FROM date) = 2023 AND mode = 3) OR (EXTRACT(YEAR FROM date) = 2022 AND mode = 4) 

이런 식으로 나오더라구요. EXTRACT의 반환 값은 int형(숫자형)이 나오고, FORMAT_DATE이나 FORMAT_DATETIME의 경우 반환 값은 String 형태로 나오는 것 같습니다. 

답변 1

답변을 작성해보세요.

0

WHIZ님의 프로필

WHIZ

지식공유자

2023.11.15

안녕하세요

FORMAT_DATE는 STRING 타입으로 데이터를 반환하는 것이 맞습니다 🙂 따라서 작성하신 주석처럼 FORMAT_DATE('%Y', date) = '2022' 로 작업하여야 정상적으로 출력됩니다.

강의에서는 예를 들어 설명하다보니 그 부분이 누락된 것 같습니다. 해당 부분은 반영하여 강의에 표기 예정입니다! 확인 감사해요!