make_interval

Proveďte interval od let, měsíců, týdnů, dnů, hodin, minut a sekund.

Odpovídající funkci SQL Databricks vizte funkcemake_interval.

Syntaxe

from pyspark.sql import functions as dbf

dbf.make_interval(years=<years>, months=<months>, weeks=<weeks>, days=<days>, hours=<hours>, mins=<mins>, secs=<secs>)

Parametry

Parameter Typ Description
years pyspark.sql.Column nebo str, optional Počet let, kladné nebo záporné.
months pyspark.sql.Column nebo str, optional Počet měsíců, kladné nebo záporné.
weeks pyspark.sql.Column nebo str, optional Počet týdnů, kladné nebo záporné.
days pyspark.sql.Column nebo str, optional Počet dní, kladné nebo záporné.
hours pyspark.sql.Column nebo str, optional Počet hodin, kladné nebo záporné.
mins pyspark.sql.Column nebo str, optional Počet minut, kladné nebo záporné.
secs pyspark.sql.Column nebo str, optional Počet sekund s zlomkovou částí v mikrosekundové přesnosti.

Návraty

pyspark.sql.Column: Nový sloupec, který obsahuje interval.

Examples

from pyspark.sql import functions as dbf
df = spark.createDataFrame([[100, 11, 1, 1, 12, 30, 01.001001]],
['year', 'month', 'week', 'day', 'hour', 'min', 'sec'])
df.select(
dbf.make_interval(df.year, df.month, 'week', df.day, df.hour, df.min, df.sec)
).show(truncate=False)
df = spark.createDataFrame([[100, 11, 1, 1, 12, 30, 01.001001]],
['year', 'month', 'week', 'day', 'hour', 'min', 'sec'])
df.select(
dbf.make_interval(df.year, df.month, 'week', df.day, df.hour, df.min)
).show(truncate=False)
df = spark.createDataFrame([[100, 11, 1, 1, 12, 30, 01.001001]],
['year', 'month', 'week', 'day', 'hour', 'min', 'sec'])
df.select(
dbf.make_interval(df.year, df.month, 'week', df.day, df.hour)
).show(truncate=False)
df = spark.createDataFrame([[100, 11, 1, 1, 12, 30, 01.001001]],
['year', 'month', 'week', 'day', 'hour', 'min', 'sec'])
df.select(dbf.make_interval(df.year, df.month, 'week', df.day)).show(truncate=False)
df = spark.createDataFrame([[100, 11, 1, 1, 12, 30, 01.001001]],
['year', 'month', 'week', 'day', 'hour', 'min', 'sec'])
df.select(dbf.make_interval(df.year, df.month, 'week')).show(truncate=False)
df = spark.createDataFrame([[100, 11, 1, 1, 12, 30, 01.001001]],
['year', 'month', 'week', 'day', 'hour', 'min', 'sec'])
df.select(dbf.make_interval(df.year, df.month)).show(truncate=False)
df = spark.createDataFrame([[100, 11, 1, 1, 12, 30, 01.001001]],
['year', 'month', 'week', 'day', 'hour', 'min', 'sec'])
df.select(dbf.make_interval(df.year)).show(truncate=False)
spark.range(1).select(dbf.make_interval()).show(truncate=False)