WEEK_FLOOR
更新时间:2025-10-17
描述
将日期时间值向下舍入到最接近的指定周间隔。如果提供了起始时间(origin),则使用该时间作为计算间隔的参考点。
语法
SQL
1WEEK_FLOOR(<datetime>)
2WEEK_FLOOR(<datetime>, <origin>)
3WEEK_FLOOR(<datetime>, <period>)
4WEEK_FLOOR(<datetime>, <period>, <origin>)
参数
| 参数 | 说明 |
|---|---|
<datetime> |
要向下舍入的日期时间值,类型为 DATETIME 或 DATETIMEV2 |
<period> |
周间隔值,类型为 INT,表示每个间隔的周数 |
<origin> |
间隔的起始点,类型为 DATETIME 或 DATETIMEV2;默认为 0001-01-01 00:00:00 |
返回值
返回类型为 DATETIME,表示向下舍入后的日期时间值。结果的时间部分将被设置为 00:00:00。
注意:
- 如果未指定周期,则默认为 1 周间隔。
- 周期必须是正整数。
- 结果总是向下舍入到过去的时间。
- 返回值的时间部分始终设置为 00:00:00。
举例
SQL
1SELECT WEEK_FLOOR('2023-07-13 22:28:18', 2);
Text
1+------------------------------------------------------------+
2| week_floor(cast('2023-07-13 22:28:18' as DATETIMEV2(0)), 2) |
3+------------------------------------------------------------+
4| 2023-07-03 00:00:00 |
5+------------------------------------------------------------+
