MAKE_DT_INTERVAL
MAKE_DT_INTERVAL
MAKE_DT_INTERVAL
函数用于构建一个时间间隔值,类型为
interval day to time
interval day to time
。该函数接受四个可选参数,分别是天数、小时数、分钟数和秒数。秒数支持小数,精度可达毫秒级别。
函数语法
make_dt_interval([days[, hours[, mins[, secs]]]])
days
days
: int 类型,表示天数。
hours
hours
: int 类型,表示小时数。
mins
mins
: int 类型,表示分钟数。
secs
secs
: decimal 类型,表示秒数,支持小数,精度可达毫秒。
返回结果
函数返回一个
interval day to time
interval day to time
类型的值。
使用示例
示例 1:创建一个包含 1 天 2 小时 3 分钟 4 秒的时间间隔。
SELECT make_dt_interval(1, 2, 3, 4);
+---------------------------------------------+
| make_dt_interval(1, 2, 3, 4) |
+---------------------------------------------+
| {"0":0,"1":1,"2":951218176,"3":1719} |
+---------------------------------------------+
示例 2:创建一个仅包含秒数的时间间隔(例如,1 分钟 20 秒)。
SELECT make_dt_interval(0, 0, 0, 80);
+----------------------------------------------+
| make_dt_interval(0, 0, 0, 80) |
+----------------------------------------------+
| {"0":0,"1":0,"2":-1604378624,"3":18} |
+----------------------------------------------+
示例 3:创建一个仅包含天数的时间间隔(例如,5 天)。
SELECT make_dt_interval(5);
+-------------------------------+
| make_dt_interval(5) |
+-------------------------------+
| {"0":0,"1":5,"2":0,"3":0} |
+-------------------------------+
示例 4:创建一个包含天数、小时数和秒数的时间间隔(例如,3 天 10 小时 30 秒)。
SELECT make_dt_interval(3, 10, 0, 30);
+----------------------------------------------+
| make_dt_interval(3, 10, 0, 30) |
+----------------------------------------------+
| {"0":0,"1":3,"2":-480646144,"3":8388} |
+----------------------------------------------+