다음을 통해 공유


TIMESTAMP_NTZ 형식

적용 대상: 예로 표시된 확인 Databricks SQL 예로 표시된 확인 Databricks Runtime 13.3 LTS 이상

필드 연도, 월, 일, 시간, 분 및 초의 값으로 구성된 값을 나타냅니다. 모든 작업은 표준 시간대를 고려하지 않고 수행됩니다.

이 기능은 공개 미리 보기 상태입니다. 지원되지 않는 기능은 주의 사항 섹션을 참조하세요.

Delta Lake에서 이 기능을 사용하려면 테이블에 대한 지원을 사용하도록 설정해야 합니다. TIMESTAMP_NTZ 유형 열이 있는 새 Delta 테이블을 만들 때 기능 지원이 자동으로 사용하도록 설정됩니다. 기존 테이블에 TIMESTAMP_NTZ 형식 열을 추가할 때 자동으로 사용하도록 설정되지 않습니다. TIMESTAMP_NTZ 열에 대한 지원을 사용하도록 설정하려면 기존 테이블에 대해 기능에 대한 지원을 명시적으로 사용하도록 설정해야 합니다.

지원을 사용하도록 설정하면 테이블 프로토콜이 업그레이드됩니다. Azure Databricks에서 Delta Lake 기능 호환성을 관리하는 방법을 참조하세요. 다음 명령으로 이 기능을 사용하도록 설정합니다.

ALTER TABLE table_name SET TBLPROPERTIES ('delta.feature.timestampNtz' = 'supported')

구문

TIMESTAMP_NTZ

제한

지원되는 타임스탬프 범위는 -290308-12-21 BCE 19:59:06~+294247-01-10 CE 04:00:54입니다.

리터럴

TIMESTAMP_NTZ timestampString

timestampString
{ '[+|-]yyyy[...]' |
  '[+|-]yyyy[...]-[m]m' |
  '[+|-]yyyy[...]-[m]m-[d]d' |
  '[+|-]yyyy[...]-[m]m-[d]d ' |
  '[+|-]yyyy[...]-[m]m-[d]d[T][h]h[:]' |
  '[+|-]yyyy[..]-[m]m-[d]d[T][h]h:[m]m[:]' |
  '[+|-]yyyy[...]-[m]m-[d]d[T][h]h:[m]m:[s]s[.]' |
  '[+|-]yyyy[...]-[m]m-[d]d[T][h]h:[m]m:[s]s.[ms][ms][ms][us][us][us]' }
  • + 또는 -: 선택적 기호입니다. -은(는) BCE를 나타내며 +은(는) CE(기본값)를 나타냅니다.
  • yyyy: 최소 4자리 숫자로 구성된 연도입니다.
  • [m]m: 01과 12 사이의 한 자리 또는 두 자리 월입니다.
  • [d]d: 01에서 31 사이의 한 자리 또는 두 자리 날짜입니다.
  • h[h]: 00에서 23 사이의 한 자리 또는 두 자리 시간입니다.
  • m[m]: 00에서 59 사이의 한 자리 또는 두 자리 분입니다.
  • s[s]: 00에서 59 사이의 한 자리 또는 두 자리 초입니다.
  • [ms][ms][ms][us][us][us]: 최대 6자리의 소수 자릿수 초입니다.

월 또는 일 구성 요소가 지정되지 않은 경우 기본값은 1입니다. 시, 분 또는 초 구성 요소를 지정하지 않으면 기본값은 0입니다.

리터럴이 적절한 타임스탬프를 나타내지 않으면 Azure Databricks에서 오류가 발생합니다.

주의

TIMESTAMP_NTZ에는 다음과 같은 제한 사항이 적용됩니다.

  • Photon 을 지원하려면 Databricks Runtime 15.4 이상이 필요합니다.
  • Power BI, Tableau, Databricks JDBC/ODBC 드라이버 또는 Databricks 오픈 소스 드라이버에 사용되는 Databricks 데이터 원본에서는 지원되지 않습니다.
  • Databricks Runtime 14.0 이하의 Delta 공유에서는 지원되지 않습니다.
  • TIMESTAMP_NTZ 형식은 Delta/Parquet/ORC/AVRO/JSON/CSV를 비롯한 파일 원본에서 지원됩니다. 그러나 TIMESTAMP_NTZ 열이 있는 JSON/CSV 파일에 대한 스키마 유추에는 제한이 있습니다. 이전 버전과의 호환성을 위해 spark.read.csv(...) 또는 spark.read.json(...)에서 기본 유추 타임스탬프 형식은 TIMESTAMP_NTZ 대신 TIMESTAMP 형식이 됩니다.

예제

> SELECT TIMESTAMP_NTZ'0000';
  0000-01-01 00:00:00

> SELECT TIMESTAMP_NTZ'2020-12-31';
  2020-12-31 00:00:00

> SELECT TIMESTAMP_NTZ'2021-7-1T8:43:28.123456';
  2021-07-01 08:43:28.123456

> SELECT current_timezone(), CAST(TIMESTAMP '2021-7-1T8:43:28' as TIMESTAMP_NTZ);
  America/Los_Angeles 2021-07-01 08:43:28

> SELECT CAST('1908-03-15 10:1:17' AS TIMESTAMP_NTZ)
  1908-03-15 10:01:17

> SELECT TIMESTAMP_NTZ'+10000';
  +10000-01-01 00:00:00