Bagikan melalui


make_timestamp_ntz

Buat tanggal-waktu lokal dari bidang tahun, bulan, hari, jam, menit, detik. Atau, coba buat tanggal-waktu lokal dari bidang tanggal dan waktu. Jika konfigurasi spark.sql.ansi.enabled salah, fungsi mengembalikan NULL pada input yang tidak valid. Jika tidak, itu akan melemparkan kesalahan.

Syntax

import pyspark.sql.functions as sf

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

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

Parameter-parameternya

Pengaturan Tipe Description
years pyspark.sql.Column atau str Tahun yang akan diwakili, dari 1 hingga 9999. Diperlukan saat membuat tanda waktu dari komponen individual. Harus digunakan dengan bulan, hari, jam, menit, dan detik.
months pyspark.sql.Column atau str Bulan dalam setahun untuk diwakili, dari 1 (Januari) hingga 12 (Desember). Diperlukan saat membuat tanda waktu dari komponen individual. Harus digunakan dengan tahun, hari, jam, menit, dan detik.
days pyspark.sql.Column atau str Hari dalam sebulan untuk diwakili, dari 1 hingga 31. Diperlukan saat membuat tanda waktu dari komponen individual. Harus digunakan dengan tahun, bulan, jam, menit, dan detik.
hours pyspark.sql.Column atau str Jam dalam sehari untuk diwakili, dari 0 hingga 23. Diperlukan saat membuat tanda waktu dari komponen individual. Harus digunakan dengan tahun, bulan, hari, menit, dan detik.
mins pyspark.sql.Column atau str Menit dari jam untuk diwakili, dari 0 hingga 59. Diperlukan saat membuat tanda waktu dari komponen individual. Harus digunakan dengan tahun, bulan, hari, jam, dan detik.
secs pyspark.sql.Column atau str Detik-of-menit dan mikro-pecahan untuk mewakili, dari 0 hingga 60. Nilainya dapat berupa bilangan bulat seperti 13, atau pecahan seperti 13,123. Jika argumen detik sama dengan 60, bidang detik diatur ke 0 dan 1 menit ditambahkan ke tanda waktu akhir. Diperlukan saat membuat tanda waktu dari komponen individual. Harus digunakan dengan tahun, bulan, hari, jam, dan menit.
date pyspark.sql.Column atau str Tanggal yang akan diwakili, dalam format DATE yang valid. Diperlukan saat membuat tanda waktu dari komponen tanggal dan waktu. Harus digunakan hanya dengan parameter waktu.
time pyspark.sql.Column atau str Waktu untuk mewakili, dalam format TIME yang valid. Diperlukan saat membuat tanda waktu dari komponen tanggal dan waktu. Harus digunakan hanya dengan parameter tanggal.

Pengembalian Barang

pyspark.sql.Column: Kolom baru yang berisi tanggal-waktu lokal.

Examples

Contoh 1: Buat tanggal-waktu lokal dari tahun, bulan, hari, jam, menit, detik.

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_ntz('year', 'month', df.day, df.hour, df.min, df.sec)
).show(truncate=False)
+----------------------------------------------------+
|make_timestamp_ntz(year, month, day, hour, min, sec)|
+----------------------------------------------------+
|2014-12-28 06:30:45.887                             |
+----------------------------------------------------+

Contoh 2: Buat tanggal-waktu lokal dari tanggal dan waktu.

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_ntz(date=df.date, time=df.time)).show(truncate=False)
+------------------------------+
|make_timestamp_ntz(date, time)|
+------------------------------+
|2014-12-28 06:30:45.887       |
+------------------------------+