メインコンテンツまでスキップ
バージョン: 4.x

QUARTER_FLOOR

説明

datetime値を指定された四半期期間境界の最も近い値に切り下げます。原点時刻が指定された場合、その時刻を基準として期間が計算されます。

ヒント

QUARTER_FLOORはバージョン3.0.8および3.1.0以降でサポートされています。

構文

QUARTER_FLOOR(<datetime>)
QUARTER_FLOOR(<datetime>, <origin>)
QUARTER_FLOOR(<datetime>, <period>)
QUARTER_FLOOR(<datetime>, <period>, <origin>)

パラメータ

ParameterDescription
<datetime>切り捨てする日時値、型はDATEまたはDATETIME
<period>四半期の期間値、型はINT、各期間に含まれる四半期の数を表す
<origin>期間の開始点、型はDATEまたはDATETIME、デフォルト値は0001-01-01 00:00:00

注意事項:

  • periodが指定されていない場合、1四半期を期間として使用することと同等です
  • periodが正の整数でない場合、関数の結果はNULLになります
  • 結果は常に過去の時刻に丸められます
  • 戻り値の時刻部分は常に00:00:00です

戻り値

<datetime>がDATE型の場合、戻り値の型はDATEです。 <datetime>がDATETIME型の場合、戻り値の型はDATETIMEです。 結果の時刻部分は00:00:00に設定されます。

'0001-01-01 00:00:00'から開始して、それぞれ5 / 4四半期の期間で、入力日付に最も近い期間開始点を返します。

SELECT QUARTER_FLOOR("2023-07-13 22:28:18", 5), QUARTER_FLOOR("2023-07-13 22:28:18", 4);
+-----------------------------------------+-----------------------------------------+
| QUARTER_FLOOR("2023-07-13 22:28:18", 5) | QUARTER_FLOOR("2023-07-13 22:28:18", 4) |
+-----------------------------------------+-----------------------------------------+
| 2021-01-01 00:00:00 | 2022-01-01 00:00:00 |
+-----------------------------------------+-----------------------------------------+

'2022-01-01 00:00:00'を期間開始点として使用し、それぞれ2/4四半期の期間で、入力日付に最も近い期間開始点を返します。

SELECT QUARTER_FLOOR("2023-03-13 22:28:18", 2, "2022-01-01 00:00:00"), QUARTER_FLOOR("2023-07-13 22:28:18", 4, "2022-01-01 00:00:00");
+----------------------------------------------------------------+----------------------------------------------------------------+
| QUARTER_FLOOR("2023-03-13 22:28:18", 2, "2022-01-01 00:00:00") | QUARTER_FLOOR("2023-07-13 22:28:18", 4, "2022-01-01 00:00:00") |
+----------------------------------------------------------------+----------------------------------------------------------------+
| 2023-01-01 00:00:00 | 2022-01-01 00:00:00 |
+----------------------------------------------------------------+----------------------------------------------------------------+

ベストプラクティス

date_floorも参照してください