Pular para o conteúdo principal

make_timestamp_ntz

Criar data e hora locais a partir dos campos de anos, meses, dias, horas, minutos e segundos. Como alternativa, tente criar uma data e hora local a partir dos campos de data e hora. Se a configuração spark.sql.ansi.enabled for falsa, a função retorna NULL em entradas inválidas. Caso contrário, ocorrerá um erro.

Sintaxe

Python
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>)

Parâmetros

Parâmetro

Tipo

Descrição

years

pyspark.sql.Column ou str

O ano a ser representado, de 1 a 9999. Necessário ao criar registros de data e hora a partir de componentes individuais. Deve ser usado com meses, dias, horas, minutos e segundos.

months

pyspark.sql.Column ou str

O mês do ano a ser representado, de 1 (janeiro) a 12 (dezembro). Necessário ao criar registros de data e hora a partir de componentes individuais. Deve ser usado com anos, dias, horas, minutos e segundos.

days

pyspark.sql.Column ou str

O dia do mês a ser representado, de 1 a 31. Necessário ao criar registros de data e hora a partir de componentes individuais. Deve ser usado com anos, meses, horas, minutos e segundos.

hours

pyspark.sql.Column ou str

A hora do dia a ser representada, de 0 a 23. Necessário ao criar registros de data e hora a partir de componentes individuais. Deve ser usado com anos, meses, dias, minutos e segundos.

mins

pyspark.sql.Column ou str

O minuto da hora a ser representado, de 0 a 59. Necessário ao criar registros de data e hora a partir de componentes individuais. Deve ser usado com anos, meses, dias, horas e segundos.

secs

pyspark.sql.Column ou str

O segundo de minuto e sua microfração representam, de 0 a 60. O valor pode ser um número inteiro, como 13, ou uma fração, como 13,123. Se o argumento "sec" for igual a 60, o campo de segundos será definido como 0 e 1 minuto será adicionado ao carimbo de data/hora final. Necessário ao criar registros de data e hora a partir de componentes individuais. Deve ser usado com anos, meses, dias, horas e minutos.

date

pyspark.sql.Column ou str

A data a ser representada, em formato DATE válido. Necessário ao criar registros de data e hora a partir de componentes de data e hora. Deve ser usado apenas com parâmetro de tempo.

time

pyspark.sql.Column ou str

O horário a ser representado, em formato de HORA válido. Necessário ao criar registros de data e hora a partir de componentes de data e hora. Deve ser usado apenas com parâmetro de data.

Devoluções

pyspark.sql.ColumnUma nova coluna que contém a data e hora local.

Exemplos

Exemplo 1 : Converter data e hora local em anos, meses, dias, horas, minutos e segundos.

Python
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)
Output
+----------------------------------------------------+
|make_timestamp_ntz(year, month, day, hour, min, sec)|
+----------------------------------------------------+
|2014-12-28 06:30:45.887 |
+----------------------------------------------------+

Exemplo 2 : Converter data e hora locais em data e hora.

Python
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)
Output
+------------------------------+
|make_timestamp_ntz(date, time)|
+------------------------------+
|2014-12-28 06:30:45.887 |
+------------------------------+