Interval
表示时间和日期间隔的数据类型族。 INTERVAL 运算符的结果类型。
结构
- 作为无符号整数值的时间间隔。
- 间隔的类型。
支持的间隔类型
纳秒
微秒
毫秒
秒
分钟
小时
天
周
月
季度
年
对于每种间隔类型,都有一个单独的数据类型。 例如,DAY
间隔对应于 IntervalDay
数据类型
SELECT toTypeName(INTERVAL 4 DAY)
┌─toTypeName(toIntervalDay(4))─┐
│ IntervalDay │
└──────────────────────────────┘
使用说明
您可以在 Date 和 DateTime 类型的值的算术运算中使用 Interval
类型的值。 例如,您可以将 4 天添加到当前时间
SELECT now() as current_date_time, current_date_time + INTERVAL 4 DAY
┌───current_date_time─┬─plus(now(), toIntervalDay(4))─┐
│ 2019-10-23 10:58:45 │ 2019-10-27 10:58:45 │
└─────────────────────┴───────────────────────────────┘
也可以同时使用多个间隔
SELECT now() AS current_date_time, current_date_time + (INTERVAL 4 DAY + INTERVAL 3 HOUR)
┌───current_date_time─┬─plus(current_date_time, plus(toIntervalDay(4), toIntervalHour(3)))─┐
│ 2024-08-08 18:31:39 │ 2024-08-12 21:31:39 │
└─────────────────────┴────────────────────────────────────────────────────────────────────┘
以及比较具有不同间隔的值
SELECT toIntervalMicrosecond(3600000000) = toIntervalHour(1);
┌─less(toIntervalMicrosecond(179999999), toIntervalMinute(3))─┐
│ 1 │
└─────────────────────────────────────────────────────────────┘
另请参阅
- INTERVAL 运算符
- toInterval 类型转换函数