TRY_TO_TIME

TRY_TO_TIME

TO_TIME, TIME의 오류 처리 버전이에요. 입력 표현식을 시간(time)으로 변환하는 같은 작업을 하지만, 변환할 수 없으면 오류를 내는 대신 NULL 값을 반환해요.

출처: 공식 문서

본문

TO_TIME, TIME의 특별한 버전으로, 입력 표현식을 시간으로 변환하는 동일한 작업을 수행하지만 오류 처리 지원(즉 변환을 수행할 수 없으면 오류를 발생시키는 대신 NULL 값을 반환)을 가집니다.

자세한 내용은 Error-handling conversion functions를 참고하세요.

참고 (See also): TO_TIME , TIME

구문 (Syntax)

TRY_TO_TIME( <string_expr> [, <format> ] )
TRY_TO_TIME( '<integer>' )

인자 (Arguments)

필수 (Required): 다음 중 하나:

string_expr

유효한 시간으로 변환할 수 있는 문자열입니다.

'integer'

정수를 포함하는 문자열로 평가되는 표현식(예: '15000000'). 문자열의 크기에 따라 초, 밀리초, 마이크로초 또는 나노초로 해석될 수 있습니다. 자세한 내용은 사용 참고를 참고하세요.

선택 (Optional):

format

string_expr에 대한 형식 지정자 또는 AUTO입니다. 자세한 내용은 변환 함수의 날짜·시간 형식을 참고하세요. 기본값은 TIME_INPUT_FORMAT 세션 매개변수의 현재 값(기본 AUTO)입니다.

반환값 (Returns)

반환값의 데이터 타입은 TIME입니다.

사용 참고 (Usage notes)

  • 출력에서 시간의 표시 형식은 TIME_OUTPUT_FORMAT 세션 매개변수(기본 HH24:MI:SS)에 의해 결정됩니다.
  • 입력 매개변수의 형식이 정수를 포함하는 문자열이면, 값의 측정 단위(초, 마이크로초, 밀리초 또는 나노초)는 다음과 같이 결정됩니다:
    • 문자열이 정수로 변환된 뒤, 그 정수는 Unix epoch(1970-01-01 00:00:00.000000000 UTC) 이후의 초, 밀리초, 마이크로초 또는 나노초 수로 취급됩니다.
      • 정수가 31536000000(1년의 밀리초 수) 미만이면, 값은 초의 수로 취급됩니다.
      • 값이 31536000000 이상이고 31536000000000 미만이면, 값은 밀리초로 취급됩니다.
      • 값이 31536000000000 이상이고 31536000000000000 미만이면, 값은 마이크로초로 취급됩니다.
      • 값이 31536000000000000 이상이면, 값은 나노초로 취급됩니다.
    • 둘 이상의 행이 평가되면(예를 들어 입력이 둘 이상의 행을 포함하는 테이블의 컬럼 이름이면), 각 값은 독립적으로 검사되어 그 값이 초, 밀리초, 마이크로초 또는 나노초를 나타내는지 결정됩니다.

예제 (Examples)

다음 예제는 TRY_TO_TIME을 사용합니다:

SELECT TRY_TO_TIME('12:30:00'), TRY_TO_TIME('Invalid');
+-------------------------+------------------------+
| TRY_TO_TIME('12:30:00') | TRY_TO_TIME('INVALID') |
|-------------------------+------------------------|
| 12:30:00                | NULL                   |
+-------------------------+------------------------+

입력 표현식을 시간으로 변환하는 예제는 TO_TIME, TIME을 참고하세요.

더 알아보기 (Learn more)