Поделиться через


make_interval

Создайте интервал из лет, месяцев, недель, дней, часов, минут и секунд.

Для соответствующей функции Databricks SQL смотрите функцию make_interval.

Синтаксис

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

Параметры

Параметр Тип Description
years pyspark.sql.Column или str, optional Количество лет, положительных или отрицательных.
months pyspark.sql.Column или str, optional Количество месяцев, положительных или отрицательных.
weeks pyspark.sql.Column или str, optional Количество недель, положительных или отрицательных.
days pyspark.sql.Column или str, optional Количество дней, положительное или отрицательное.
hours pyspark.sql.Column или str, optional Количество часов, положительное или отрицательное.
mins pyspark.sql.Column или str, optional Количество минут, положительное или отрицательное.
secs pyspark.sql.Column или str, optional Количество секунд с дробной частью в микросекундах точности.

Возвраты

pyspark.sql.Column: новый столбец, содержащий интервал.

Примеры

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)