MONTH_FLOOR
説明
日時値を指定された最も近い月間隔に切り下げます。開始時刻(origin)が提供されている場合、間隔を計算する際の基準としてその時刻を使用します。
構文
MONTH_FLOOR(<datetime>)
MONTH_FLOOR(<datetime>, <origin>)
MONTH_FLOOR(<datetime>, <period>)
MONTH_FLOOR(<datetime>, <period>, <origin>)
パラメータ
| パラメータ | 説明 |
|---|---|
<datetime> | 切り下げする日時値、DATETIME または DATETIMEV2 型 |
<period> | 月間隔値、INT 型、各間隔の月数を表す |
<origin> | 間隔の開始点、DATETIME または DATETIMEV2 型;デフォルトは 0001-01-01 00:00:00 |
戻り値
切り下げされた日時値を表す DATETIME 型の値を返します。結果の時刻部分は 00:00:00 に設定されます。
例
SELECT MONTH_FLOOR("2023-07-13 22:28:18", 5);
+--------------------------------------------------------------+
| month_floor(cast('2023-07-13 22:28:18' as DATETIMEV2(0)), 5) |
+--------------------------------------------------------------+
| 2023-05-01 00:00:00 |
+--------------------------------------------------------------+
注意:
- 期間が指定されていない場合、デフォルトで1ヶ月間隔になります。
- 期間は正の整数である必要があります。
- 結果は常に過去の時刻に切り下げられます。
- 返される値の時刻部分は常に00:00:00に設定されます。
- MONTH_CEILとは異なり、MONTH_FLOORは常に間隔を超える部分を破棄します。
ベストプラクティス
date_floorも参照してください