跳到主要内容

DATE_DIFF

引入或更新: v1.2.645

根据指定的时间单位计算两个日期或时间戳之间的差异。如果 <end_date><start_date> 之后,结果为正;如果 <end_date><start_date> 之前,结果为负。

语法

DATE_DIFF(<unit>, <start_date>, <end_date>)
参数描述
<unit>差异的时间单位:YEAR, QUARTER, MONTH, WEEK, DAY, HOUR, MINUTE, 或 SECOND
<start_date>起始日期或时间戳。
<end_date>结束日期或时间戳。

示例

此示例计算昨天今天之间的小时差:

SELECT DATE_DIFF(HOUR, YESTERDAY(), TODAY());

┌───────────────────────────────────────┐
│ DATE_DIFF(HOUR, yesterday(), today())
├───────────────────────────────────────┤
24
└───────────────────────────────────────┘

此示例计算当前日期与2000年1月1日之间的年份差:

SELECT NOW(), DATE_DIFF(YEAR, NOW(), TO_DATE('2000-01-01'));

┌────────────────────────────────────────────────────────────────────────────┐
now() │ DATE_DIFF(YEAR, now(), to_date('2000-01-01'))
├────────────────────────────┼───────────────────────────────────────────────┤
2024-10-15 03:38:23.726599-24
└────────────────────────────────────────────────────────────────────────────┘
开始使用 Databend Cloud
低成本
快速分析
多种数据源
弹性扩展
注册