BigQuery5. 데이터 변환1 (About Data Type, CAST, SAFE_)

이유민·2024년 11월 2일

BigQuery

목록 보기
6/15

1. 데이터 타입

  • 데이터 타입에 따라 데이터 변환을 위한 다양한 함수들이 존재한다

1.1. 데이터 타입:

  • 숫자 / 문자 / 시간, 날짜 / Bool(참, 거짓) / Json / ARRAY 등

1.2. 데이터 타입이 왜 중요한가?

  • 보이는 것과 저장된 것의 차이가 존재한다.

  • 예) 빈 값 : " "일 수도 있고, NULL일 수도 있다
    1 : 숫자 1일 수도 있고, 문자 1일 수도 있다
    2023-12-31 : DATE 2023-12-31일 수도 있고, 문자 2023-12-31일 수도 있다

    => 생각했던 타입과 다른 경우, 데이터 타입을 변경해야 한다


2. 자료 타입 변경하기

  • CAST : 자료 타입을 변경하는 함수

    #숫자 1을 문자 1로 변경하기
    SELECT
    --CAST(1 AS STRING)

  • SAFE_ : 더 안전하게 데이터 타입 변경
    => SAFE__가 붙은 함수는 변환이 실패할 경우 NULL을 반환
    => 데이터를 NULL값으로 두는 것이 더 편할 때 사용하기 유용하다

    • 예시1) 자료 타입 변경이 불가능한 경우

      SELECT
      --CAST("안녕하세요" AS INT64)

      -> 오류 발생

      SELECT
      --SAFE_CAST("안녕하세요" AS INT64)

      -> NULL을 반환
      ..

    • 예시2) 수학 함수에 적용하는 경우

      x = 3, y = 0 일 때
      x / y

      -> zero error 발생 : x, y 중 하나라도 0인 경우

      SAFE_DIVIDE(x, y)

      -> NULL을 반환

profile
best.DA

0개의 댓글