通过截断分数部分获取指定单位中的时间戳之间的差异。
Syntax
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”、“毫秒”和“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()