TIMESTAMP tür

Şunlar için geçerlidir:onay işareti evet olarak işaretlenmiş Databricks SQL onay işareti evet olarak işaretlenmiş Databricks Runtime

Oturum yerel saat dilimiyle yıl, ay, gün, saat, dakika ve saniye alanlarının değerlerini içeren değerleri temsil eder. Zaman damgası değeri, zaman içinde mutlak bir noktayı temsil eder.

Sözdizimi

TIMESTAMP [ (p) ] | TIMESTAMP_LTZ [ (p) ]
  • p: Kesir-saniye rakamlarının sayısını temsil eden isteğe bağlı bir hassasiyet6.9 Varsayılan değer: 6. Nanosaniye hassasiyeti için belirtin 9 .

Important

TIMESTAMP(p) Precision 7–9Beta'da.

Sınırlar

Desteklenen zaman damgaları aralığı -290308-12-21 BCE 19:59:06 GMT ile +294247-01-10 CE 04:00:54 GMT arasındadır.

Note

Delta veya Parquet'e yazıldığında, TIMESTAMP(p) hassasiyetten 6 büyük değerler 1677'den 2262'ye kadar olan yıllarla sınırlıdır.

Değişmez Değerler

TIMESTAMP timestampString

TIMESTAMP_LTZ 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][ns][ns][ns][zoneId]' }
  • + veya -: İsteğe bağlı bir işaret. - BCE'yi gösterir, + CE'yi (varsayılan) gösterir.
  • yyyy: En az dört basamak içeren bir yıl.
  • [m]m: 01 ile 12 arasında bir veya iki basamaklı ay.
  • [d]d: 01 ile 31 arasında bir veya iki basamaklı bir gün.
  • h[h]: 00 ile 23 arasında bir veya iki basamaklı saat.
  • m[m]: 00 ile 59 arasında bir veya iki basamaklı dakika.
  • s[s]: 00 ile 59 arasında bir veya iki basamaklı saniye.
  • [ms][ms][ms][us][us][us][ns][ns][ns]: 9 haneli kesirli saniyeye kadar. Bir TIMESTAMP(9) literal oluşturmak için tam olarak dokuz kesirli rakamlı belirtin.

zoneId:

  • Z - Zulu saat dilimi UTC+0
  • +|-[h]h:[m]m
  • UTC+, UTC-, GMT+, GMT-, UT+ veya UT- ön eklerinden birine ve biçimlerde son eke sahip bir kimlik:
    • +|-h[h]
    • +|-ss[:]dd
    • +|-hh:mm:ss
    • +|-ssmms
  • Biçimindeki <area>/<city>bölge tabanlı bölge kimlikleri, örneğin, Europe/Paris.

Ay veya gün bileşenleri belirtilmezse varsayılan olarak 1 olur. Saat, dakika veya ikinci bileşenler belirtilmezse varsayılan olarak 0 olur. Eğer zoneId belirtilmezse, varsayılan olarak oturum saat dilimi olarak ayarlanır.

Sabit değer uygun bir zaman damgasını temsil etmiyorsa Azure Databricks hata verir.

Notlar

Yerel saat dilimine sahip zaman damgaları dahili olarak normalleştirilir ve UTC'de kalıcı hale getirilir. Değer veya bir kısmı çıkartıldığında yerel oturum saat dilimi uygulanır.

Delta Lake tablolarında sütunları kullanmak TIMESTAMP(9) için zaman damgası hassasiyet özelliğini etkinleştirin:

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

Özelliğin etkinleştirilmesi tablo protokolünü yükseltir. Özelliği desteklemeyen istemciler tabloyu okuyamaz veya yazamaz. Bkz . Delta Lake özellik uyumluluğu ve protokolleri.

Örnekler

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

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

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

> SELECT current_timezone(), TIMESTAMP'2021-7-1T8:43:28UTC+3';
  America/Los_Angeles 2021-06-30 22:43:28

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

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

> SELECT typeof(TIMESTAMP'2026-08-18 14:30:45.123456789');
  TIMESTAMP(9)

> SELECT CAST('2026-08-18 14:30:45.123456789' AS TIMESTAMP(9));
  2026-08-18 14:30:45.123456789

TIMESTAMP(9) Tablo sınırlamaları

  • Iceberg tabloları desteklenmez.
  • Delta Lake tablolarında oluşturulan sütunlar desteklenmez.
  • Delta Lake tablolarındaki sıvı kümeleme sütunları desteklenmemektedir.