make_timestamp

Yıl, ay, gün, saat, dakika, saniye ve (isteğe bağlı) saat dilimi alanlarından zaman damgası oluşturun. Alternatif olarak tarih, saat ve (isteğe bağlı) saat dilimi alanlarından zaman damgası oluşturabilirsiniz. Sonuç veri türü yapılandırma spark.sql.timestampTypedeğeriyle tutarlıdır. Yapılandırma spark.sql.ansi.enabled false ise işlev geçersiz girişlerde NULL döndürür. Aksi takdirde, bunun yerine bir hata oluşturur.

İlgili Databricks SQL fonksiyonu için bakınız make_timestamp fonksiyonu.

Sözdizimi

import pyspark.sql.functions as sf

# From individual components
sf.make_timestamp(years=<years>, months=<months>, days=<days>, hours=<hours>, mins=<mins>, secs=<secs>)

# With timezone
sf.make_timestamp(years=<years>, months=<months>, days=<days>, hours=<hours>, mins=<mins>, secs=<secs>, timezone=<timezone>)

# From date and time
sf.make_timestamp(date=<date>, time=<time>)

# From date and time with timezone
sf.make_timestamp(date=<date>, time=<time>, timezone=<timezone>)

Parametreler

Parametre Türü Description
years pyspark.sql.Column veya str 1 ile 9999 arasındaki temsili yıl. Tek tek bileşenlerden zaman damgaları oluştururken gereklidir. Aylar, günler, saatler, dakikalar ve saniyelerle kullanılmalıdır.
months pyspark.sql.Column veya str 1 (Ocak) ile 12 (Aralık) arasındaki temsili yılın ayı. Tek tek bileşenlerden zaman damgaları oluştururken gereklidir. Yıl, gün, saat, dakika ve saniye ile kullanılmalıdır.
days pyspark.sql.Column veya str 1 ile 31 arasındaki temsili ayın günü. Tek tek bileşenlerden zaman damgaları oluştururken gereklidir. Yıllar, aylar, saatler, dakikalar ve saniyelerle kullanılmalıdır.
hours pyspark.sql.Column veya str 0 ile 23 arasındaki temsili günün saati. Tek tek bileşenlerden zaman damgaları oluştururken gereklidir. Yıllar, aylar, günler, dakikalar ve saniyelerle kullanılmalıdır.
mins pyspark.sql.Column veya str Temsili saat dakikası, 0 ile 59 arasında. Tek tek bileşenlerden zaman damgaları oluştururken gereklidir. Yıl, ay, gün, saat ve saniye ile kullanılmalıdır.
secs pyspark.sql.Column veya str Dakikanın ikinci bölümü ve 0 ile 60 arasındaki mikro kesirini temsil eder. Değer 13 gibi bir tamsayı veya 13,123 gibi bir kesir olabilir. sn bağımsız değişkeni 60'a eşitse, saniye alanı 0 olarak ayarlanır ve son zaman damgasına 1 dakika eklenir. Tek tek bileşenlerden zaman damgaları oluştururken gereklidir. Yıl, ay, gün, saat ve dakika cinsinden kullanılmalıdır.
timezone pyspark.sql.Column veya str Optional. Saat dilimi tanımlayıcısı. Örneğin, CET, UTC vb.
date pyspark.sql.Column veya str Geçerli TARİh biçiminde temsil etmek için tarih. Tarih ve saat bileşenlerinden zaman damgaları oluştururken gereklidir. Yalnızca time parametresiyle kullanılmalıdır.
time pyspark.sql.Column veya str Geçerli TIME biçiminde temsil etmek için gereken süre. Tarih ve saat bileşenlerinden zaman damgaları oluştururken gereklidir. Yalnızca tarih parametresiyle kullanılmalıdır.

İade

pyspark.sql.Column: Zaman damgası içeren yeni bir sütun.

Örnekler

Örnek 1: Yıl, ay, gün, saat, dakika, saniye ve saat diliminden zaman damgası yapın.

import pyspark.sql.functions as sf
df = spark.createDataFrame([[2014, 12, 28, 6, 30, 45.887, 'CET']],
    ['year', 'month', 'day', 'hour', 'min', 'sec', 'tz'])
df.select(
    sf.make_timestamp(df.year, df.month, df.day, 'hour', df.min, df.sec, 'tz')
).show(truncate=False)
+----------------------------------------------------+
|make_timestamp(year, month, day, hour, min, sec, tz)|
+----------------------------------------------------+
|2014-12-27 21:30:45.887                             |
+----------------------------------------------------+

Örnek 2: Yıllar, aylar, günler, saatler, dakikalar ve saniyelerden (saat dilimi olmadan) zaman damgası yapın.

import pyspark.sql.functions as sf
df = spark.createDataFrame([[2014, 12, 28, 6, 30, 45.887]],
    ['year', 'month', 'day', 'hour', 'min', 'sec'])
df.select(
    sf.make_timestamp('year', 'month', df.day, df.hour, df.min, df.sec)
).show(truncate=False)
+--------------------------------------------------+
|make_timestamp(year, month, day, hour, min, sec) |
+--------------------------------------------------+
|2014-12-28 06:30:45.887                           |
+--------------------------------------------------+

Örnek 3: Saat dilimiyle tarih ve saatten zaman damgası yapma.

import pyspark.sql.functions as sf
from datetime import date, time
df = spark.range(1).select(
    sf.lit(date(2014, 12, 28)).alias("date"),
    sf.lit(time(6, 30, 45, 887000)).alias("time"),
    sf.lit("CET").alias("tz")
)
df.select(sf.make_timestamp(date=df.date, time=df.time, timezone=df.tz)).show(truncate=False)
+------------------------------------+
|make_timestamp(date, time, timezone)|
+------------------------------------+
|2014-12-27 21:30:45.887             |
+------------------------------------+

Örnek 4: Tarih ve saatten (saat dilimi olmadan) zaman damgası yapın.

import pyspark.sql.functions as sf
from datetime import date, time
df = spark.range(1).select(
    sf.lit(date(2014, 12, 28)).alias("date"),
    sf.lit(time(6, 30, 45, 887000)).alias("time")
)
df.select(sf.make_timestamp(date=df.date, time=df.time)).show(truncate=False)
+--------------------------+
|make_timestamp(date, time)|
+--------------------------+
|2014-12-28 06:30:45.887   |
+--------------------------+