적용 대상:
Databricks SQL
Databricks Runtime 18.3 이상으로 표시
Important
이 기능은 베타 버전으로 제공됩니다. 작업 영역 관리자는 미리 보기 페이지에서 이 기능에 대한 액세스를 제어할 수 있습니다. Azure Databricks 미리 보기 관리를 참조하세요.
표준 시간대가 없는 시간, 분 및 초 필드 값으로 구성된 하루 중 시간을 나타냅니다.
Syntax
TIME | TIME(p)
p: 초 필드의 소수 자릿수를 지정하는 선택적 정밀도입니다.
유효한 값은 0부터 6까지입니다. 생략하면 p 기본 전체 자릿수는 (마이크로초)입니다 6 .
Limits
지원되는 시간 값의 범위는 .입니다 00:00:00.00000023:59:59.999999.
Literals
TIME timeString
timeString
{ '[h]h:[m]m' |
'[h]h:[m]m:[s]s' |
'[h]h:[m]m:[s]s.[f...]' |
'[h]h:[m]m AM|PM' |
'[h]h:[m]m:[s]s AM|PM' |
'[h]h:[m]m:[s]s.[f...] AM|PM' }
-
[h]h: 1~00232자리(24시간 형식) 또는 사이01(1212시간 형식AM/PM)입니다. -
[m]m: 1~2자리 분 사이00입니다59. -
[s]s: 1~2자리 초 사이00입니다59. -
[f...]: 최대 6자리 소수 초까지만 표시됩니다. -
AM또는PM: 12시간 클록 값을 나타내는 선택적 대/소문자를 구분하지 않는 접미사입니다.
TIME 접두사는 대/소문자를 구분하지 않습니다.
두 번째 구성 요소를 지정하지 않으면 기본값은 .입니다 0.
리터럴이 적절한 시간을 나타내지 않으면 Azure Databricks 오류가 발생합니다.
전체 자릿수 규칙
전체 자릿수가 서로 다른 두 TIME 값(예: COALESCE, CASE, UNION 또는 산술)을 결합하면 결과는 두 정밀도의 더 넓은 값을 사용합니다.
예를 들어 가장 일반적인 형식 TIME(3) 은 .입니다 TIME(6)TIME(6).
값을 낮은 정밀도로 캐스팅 TIME 하면 소수 자릿수 초는 반올림되지 않고 잘립니다.
> SELECT CAST(TIME'12:30:45.987654' AS TIME(3));
12:30:45.987
일별 간격 TIME을 추가하거나 빼면 결과는 더 넓은 TIME 전체 자릿수와 간격의 소수 자릿수 초 정밀도를 사용합니다. 예를 들어 TIME(0) + INTERVAL '1.123456' SECOND은 TIME(6)을 반환합니다. 결과가 [00:00:00, 24:00:00) 벗어나면 Azure Databricks DATETIME_OVERFLOW 발생합니다.
Notes
값에 대한 TIME 모든 작업은 표준 시간대를 고려하지 않고 수행됩니다.
Delta Lake 테이블의 열을 사용 TIME 하려면 형식 열이 있는 새 Delta 테이블을 TIME 만들 때 지원이 자동으로 활성화됩니다. 기존 테이블에 열을 추가 TIME 하려면 먼저 이 기능을 사용하도록 설정해야 합니다.
ALTER TABLE table_name SET TBLPROPERTIES ('delta.feature.timeType' = 'supported')
형식 TIME 에는 다음과 같은 제한 사항이 있습니다.
- 생성된 열에서는 지원되지 않습니다.
- 블룸 필터 인덱스에 대해서는 지원되지 않습니다.
- Z 순서 지정은 지원되지 않습니다.
예제
> SELECT TIME'10:30:00';
10:30:00
> SELECT TIME'08:15';
08:15:00
> SELECT TIME'23:59:59.123456';
23:59:59.123456
> SELECT CAST('14:30:00' AS TIME);
14:30:00
> SELECT CAST('09:15:30.5' AS TIME(3));
09:15:30.500
> SELECT current_time();
16:57:04.304361
> SELECT make_time(6, 30, 45.887);
06:30:45.887000