説明
この関数は、パラメータ fmt の単位距離で、指定された日付 date に最も近い日時値を返します。これはグレゴリオ暦のルールに基づいて計算されます。
構文
ROUND(date[,fmt])
パラメータの説明
パラメータ |
説明 |
|---|---|
| date | DATE、TIMESTAMP、TIMESTAMP WITH TIME ZONE、TIMESTAMP WITH LOCAL TIME ZONE を含む、すべての日付を含むデータ型の値。 |
| fmt | 関数の戻り値と date の差の単位を指定します。オプションです。fmt を省略した場合、date は最も近い日に四捨五入されます。 |
以下の表は、fmt パラメータの取り得る値を示しています(大文字と小文字は区別されません)。
fmt の値 |
説明 |
|---|---|
| j | デフォルト値。直近の 0 時点の日付を返します。 |
| day、dy、d | 指定された日付に最も近い日曜日を返します。 |
| month、mon、mm、rm | 指定された日付に最も近い月の1日を返します。 |
| q | 指定された日付に最も近い四半期の日付を返します。 |
| syear、year、yyyy、yyy、yy、y | 複数の y は精度を表し、指定された日付に最も近い年の1日を返します。 |
| cc、scc | 指定された日付に最も近い世紀の初日を返します。 |
戻り値の型
DATE データ型を返します。
例
現在の日付から最も近い午前0時の日付、日曜日、月初め、四半期初め、年始の日付を返します。
obclient> SELECT SYSDATE 当時の日付,
ROUND(SYSDATE) 最近の0時の日付,
ROUND(SYSDATE,'DAY') 最近の日曜日,
ROUND(SYSDATE,'MONTH') 最近の月初め,
ROUND(SYSDATE,'Q') 最近の四半期初めの日付,
ROUND(SYSDATE,'YEAR') 最近の年始の日付
FROM DUAL;
+--------------+------------------+-----------------+--------------+--------------------+--------------------+
| 当时日期 | 最近0点日期 | 最近星期日 | 最近月初 | 最近季初日期 | 最近年初日期 |
+--------------+------------------+-----------------+--------------+--------------------+--------------------+
| 18-NOV-21 | 18-NOV-21 | 21-NOV-21 | 01-DEC-21 | 01-JAN-22 | 01-JAN-22 |
+--------------+------------------+-----------------+--------------+--------------------+--------------------+
1 row in set