SECOND_FLOOR
描述
函数用于将输入的日期时间值向下对齐到指定的秒周期边界,并返回对齐后的日期时间值。
语法
SECOND_FLOOR(<datetime>[, <period>][, <origin_datetime>])
参数
参数 | 说明 |
---|---|
<datetime> | 必填,输入的日期时间值,支持 DATETIME 类型。 |
<period> | 可选,表示每个周期由多少秒组成,支持正整数类型(INT)。默认为 1 秒。 |
<origin_datetime> | 可选,对齐的时间起点,支持 DATETIME 类型。如果未指定,默认为 0001-01-01T00:00:00。 |
返回值
- 返回一个日期时间值,表示输入日期时间向上对齐后的结果。
- 如果输入的
<datetime>
为 NULL,返回 NULL。 - 如果输入的
<datetime>
为非法日期(如 0000-00-00T00:00:00),返回 NULL。
举例
只指定参数<datetime>
SELECT SECOND_FLOOR('2025-01-23 12:34:56');
+------------------------------------------------------------+
| second_floor(cast('2025-01-23 12:34:56' as DATETIMEV2(0))) |
+------------------------------------------------------------+
| 2025-01-23 12:34:56 |
+------------------------------------------------------------+
指定参数 <datetime>
, <origin_datetime>
SELECT SECOND_FLOOR('2025-01-23 12:34:56', '2025-01-01 00:00:00');
+----------------------------------------------------------------------------------------------------------+
| second_floor(cast('2025-01-23 12:34:56' as DATETIMEV2(0)), cast('2025-01-01 00:00:00' as DATETIMEV2(0))) |
+----------------------------------------------------------------------------------------------------------+
| 2025-01-23 12:34:56 |
+----------------------------------------------------------------------------------------------------------+
指定参数 <datetime>
,<period>
SELECT SECOND_FLOOR('2025-01-23 12:34:56', 5);
+---------------------------------------------------------------+
| second_floor(cast('2025-01-23 12:34:56' as DATETIMEV2(0)), 5) |
+---------------------------------------------------------------+
| 2025-01-23 12:34:55 |
+---------------------------------------------------------------+
同时指定 <datetime>
,<period>
,<origin_datetime>
SELECT SECOND_FLOOR('2025-01-23 12:34:56', 10, '2025-01-23 12:00:00');
+--------------------------------------------------------------------------------------------------------------+
| second_floor(cast('2025-01-23 12:34:56' as DATETIMEV2(0)), 10, cast('2025-01-23 12:00:00' as DATETIMEV2(0))) |
+--------------------------------------------------------------------------------------------------------------+
| 2025-01-23 12:34:50 |
+--------------------------------------------------------------------------------------------------------------+