Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Saat diliminden bağımsız bir zaman damgasını (UTC zaman damgası olarak yorumlanır) verilen saat dilimindeki bir zaman damgasına dönüştürür. Bu, TIMESTAMP OLMADAN TIMEZONE destekleyen veritabanları için yaygın bir işlevdir.
Ancak Spark'taki zaman damgası, Unix döneminin saat diliminden bağımsız olmayan mikrosaniye sayısını temsil eder. Bu nedenle Spark'ta bu işlev utc saat diliminden verilen saat dilimine zaman damgası değerini kaydırır.
Giriş saat dilimine sahip bir dizeyse (örneğin 2018-03-13T06:18:23+00:00, ) bu işlev beklenmeyen bir sonuç döndürebilir çünkü Spark önce dizedeki saat dilimine göre dizeyi zaman damgasına dönüştürür ve ardından zaman damgasını oturum yerel saat dilimine göre bir dizeye dönüştürerek sonucu görüntüler.
İlgili Databricks SQL fonksiyonu için bakınız from_utc_timestamp fonksiyonu.
Sözdizimi
from pyspark.sql import functions as dbf
dbf.from_utc_timestamp(timestamp=<timestamp>, tz=<tz>)
Parametreler
| Parametre | Türü | Description |
|---|---|---|
timestamp |
pyspark.sql.Column veya str |
zaman damgaları içeren sütun |
tz |
pyspark.sql.Column veya literal string |
Girişin ayarlanması gereken saat dilimi kimliğinin ayrıntılarını gösteren dize. Bölge tabanlı bölge kimlikleri veya bölge uzaklıkları biçiminde olmalıdır. Bölge kimlikleri 'Amerika/Los_Angeles' gibi 'alan/şehir' biçiminde olmalıdır. Bölge uzaklıkları '(+|-)SS:mm' biçiminde olmalıdır, örneğin '-08:00' veya '+01:00'. Ayrıca 'UTC' ve 'Z' de '+00:00' diğer adları olarak desteklenir. Belirsiz olabileceği için diğer kısa adların kullanılması önerilmez. |
İade
pyspark.sql.Column: verilen saat diliminde temsil edilen zaman damgası değeri.
Örnekler
from pyspark.sql import functions as dbf
df = spark.createDataFrame([('1997-02-28 10:30:00', 'JST')], ['ts', 'tz'])
df.select('*', dbf.from_utc_timestamp('ts', 'PST')).show()
df.select('*', dbf.from_utc_timestamp(df.ts, df.tz)).show()