Condividi tramite


make_interval

Impostare l'intervallo tra anni, mesi, settimane, giorni, ore, minuti e sec.

Per la funzione SQL di Databricks corrispondente, vedere make_interval funzione.

Sintassi

from pyspark.databricks.sql import functions as dbf

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

Parametri

Parametro TIPO Description
years pyspark.sql.Column o str, optional Numero di anni, positivi o negativi.
months pyspark.sql.Column o str, optional Numero di mesi, positivi o negativi.
weeks pyspark.sql.Column o str, optional Numero di settimane, positive o negative.
days pyspark.sql.Column o str, optional Numero di giorni, positivi o negativi.
hours pyspark.sql.Column o str, optional Numero di ore, positive o negative.
mins pyspark.sql.Column o str, optional Numero di minuti, positivi o negativi.
secs pyspark.sql.Column o str, optional Numero di secondi con la parte frazionaria nella precisione del microsecondo.

Restituzioni

pyspark.sql.Column: nuova colonna contenente un intervallo.

Esempi

from pyspark.databricks.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)