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


months_between

Возвращает количество месяцев между датами 1 и датой2. Если дата1 позже 2, результат положительный. Возвращается целое число, если оба входных данных имеют одинаковый день месяца или оба являются последним днем их соответствующих месяцев. В противном случае разница вычисляется при условии 31 дней в месяц. Результат округляется до 8 цифр, если roundOff не задано значение False.

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

Синтаксис

from pyspark.databricks.sql import functions as dbf

dbf.months_between(date1=<date1>, date2=<date2>, roundOff=<roundOff>)

Параметры

Параметр Тип Description
date1 pyspark.sql.Column или str столбец первой даты.
date2 pyspark.sql.Column или str второй столбец даты.
roundOff bool, optional следует ли округлить (до 8 цифр) окончательное значение или нет (по умолчанию: True).

Возвраты

pyspark.sql.Column: количество месяцев между двумя датами.

Примеры

from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame([('1997-02-28 10:30:00', '1996-10-30')], ['d1', 'd2'])
df.select('*', dbf.months_between(df.d1, df.d2)).show()
df.select('*', dbf.months_between('d2', 'd1')).show()
df.select('*', dbf.months_between('d1', df.d2, False)).show()