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


timestamp_diff

Получает разницу между метками времени в указанных единицах путем усечения части дроби.

Синтаксис

from pyspark.databricks.sql import functions as dbf

dbf.timestamp_diff(unit=<unit>, start=<start>, end=<end>)

Параметры

Параметр Тип Description
unit literal string Это означает единицы разницы между заданными метками времени. Поддерживаются варианты (без учета регистра): YEAR, "QUARTER", "MONTH", "WEEK", "DAY", "HOUR", "MINUTE", "SECOND", "MILLISECOND" и "MICROSECOND".
start pyspark.sql.Column или str Метка времени, из endTimestampкоторой вычитается выражение.
end pyspark.sql.Column или str Метка времени, из которой вычитается startTimestampвыражение.

Возвраты

pyspark.sql.Column: разница между метками времени.

Примеры

import datetime
from pyspark.databricks.sql import functions as dbf
df = spark.createDataFrame(
[(datetime.datetime(2016, 3, 11, 9, 0, 7), datetime.datetime(2024, 4, 2, 9, 0, 7))],
['ts1', 'ts2'])
df.select('*', dbf.timestamp_diff('year', 'ts1', 'ts2')).show()
df.select('*', dbf.timestamp_diff('WEEK', 'ts1', 'ts2')).show()
df.select('*', dbf.timestamp_diff('day', df.ts2, df.ts1)).show()