ROUND (Dates)
日付の一部分を丸めます。また、ROUNDを使って数値を丸めることもできます。
この関数は、日付の中の以下の部分を丸めることができます。
- •年。日付の年の部分を、月に基づいて丸めます。月が1月~6月の場合、関数は入力した年の1月1日を返し、時刻を00:00:00に設定します。月が7月~12月の場合、関数は次の年の1月1日を返し、時刻を00:00:00に設定します。例えば、ROUND(06/30/1998 2:30:55, 'YY')の式は01/01/1998 00:00:00を、ROUND(07/1/1998 3:10:15, 'YY')の式は1/1/1998 00:00:00を返します。
- •月。日付の月の部分を、日に基づいて丸めます。日が1日~15日の場合、関数は日付を入力された月の最初の日に丸め、時刻を00:00:00に設定します。日が16日~月の最後の日の場合、関数は日付を次の月の最初の日に丸め、時刻を00:00:00に設定します。例えば、ROUND(4/15/1998 12:15:00, 'MM')の式は4/1/1998 00:00:00を、ROUND(4/16/1998 8:24:19, 'MM')の式は5/1/1998 00:00:00を返します。
- •日。日付の日の部分を、時刻に基づいて丸めます。時刻が00:00:00(AM12時)~11:59:59AMの場合、関数は現在の日付を返し、時刻を00:00:00(AM12時)に設定します。時刻が12:00:00(PM12時)以降の場合、関数は日付を次の日に丸めて、時刻を00:00:00(AM12時)に設定します。例えば、ROUND(06/13/1998 2:30:45, 'DD')の式は06/13/1998 00:00:00、ROUND(06/13/1998 22:30:45, 'DD')の式は06/14/1998 00:00:00を返します。
- •時間。日付の時の部分を、分に基づいて丸めます。時刻の分の部分が0~29の間の数であれば、関数は現在の時で分と秒をゼロにした値を返します。分の部分が30以上の場合、関数は次の時で分と秒をゼロにした値を返します。例えば、ROUND(04/01/1998 11:29:35, 'HH')の式は04/01/1998 11:00:00を、ROUND(04/01/1998 13:39:00, 'HH')の式は04/01/1998 14:00:00を返します。
- •分。日付の分の部分を、秒に基づいて丸めます。秒の部分が0~29の間の数であれば、関数は現在の分で秒をゼロにした値を返します。秒の部分が30~59の間の数であれば、関数は次の分で秒をゼロにした値を返します。例えば、ROUND(05/22/1998 10:15:29, 'MI')の式は05/22/1998 10:15:00、ROUND(05/22/1998 10:15:30, 'MI')の式は05/22/1998 10:16:00を返します。
構文
ROUND( date [,format] )
引数 | 必須/ オプション | 説明 |
---|
date | 必須 | Date/Timeデータ型。丸める前に、TO_DATEをネストして文字列を日付に変換できます。 |
format | オプション | 正しいフォーマット文字列を入力します。これは日付の中で丸めたい部分です。日付の中の1つの部分だけを丸めることができます。フォーマット文字列を省略すると、関数は日付を最も近い日に丸めます。 |
Return Value
指定された部分が丸められた日付。ROUNDは元の日付と同じ形式で日付を返します。この関数の結果を、Date/Timeデータ型を持つ任意のカラムにリンクすることができます。
関数にNULL値を渡した場合はNULLです。
例
以下の式は、DATE_SHIPPEDカラムの日付の年の部分を丸めます。
ROUND( DATE_SHIPPED, 'Y' )
ROUND( DATE_SHIPPED, 'YY' )
ROUND( DATE_SHIPPED, 'YYY' )
ROUND( DATE_SHIPPED, 'YYYY' )
DATE_SHIPPED | RETURN VALUE |
---|
Jan 15 1998 2:10:30AM | Jan 1 1998 12:00:00AM |
Apr 19 1998 1:31:20PM | Jan 1 1998 12:00:00AM |
Dec 20 1998 3:29:55PM | Jan 1 1999 12:00:00AM |
NULL | NULL |
以下の式は、DATE_SHIPPEDカラムの各日付の月の部分を丸めます。
ROUND( DATE_SHIPPED, 'MM' )
ROUND( DATE_SHIPPED, 'MON' )
ROUND( DATE_SHIPPED, 'MONTH' )
DATE_SHIPPED | RETURN VALUE |
---|
Jan 15 1998 2:10:30AM | Jan 1 1998 12:00:00AM |
Apr 19 1998 1:31:20PM | May 1 1998 12:00:00AM |
Dec 20 1998 3:29:55PM | Jan 1 1999 12:00:00AM |
NULL | NULL |
以下の式は、DATE_SHIPPEDカラムの各日付の日の部分を丸めます。
ROUND( DATE_SHIPPED, 'D' )
ROUND( DATE_SHIPPED, 'DD' )
ROUND( DATE_SHIPPED, 'DDD' )
ROUND( DATE_SHIPPED, 'DY' )
ROUND( DATE_SHIPPED, 'DAY' )
DATE_SHIPPED | RETURN VALUE |
---|
Jan 15 1998 2:10:30AM | Jan 15 1998 12:00:00AM |
Apr 19 1998 1:31:20PM | Apr 20 1998 12:00:00AM |
Dec 20 1998 3:29:55PM | Dec 21 1998 12:00:00AM |
Dec 31 1998 11:59:59PM | Jan 1 1999 12:00:00AM |
NULL | NULL |
以下の式は、DATE_SHIPPEDカラムの各日付の時の部分を丸めます。
ROUND( DATE_SHIPPED, 'HH' )
ROUND( DATE_SHIPPED, 'HH12' )
ROUND( DATE_SHIPPED, 'HH24' )
DATE_SHIPPED | RETURN VALUE |
---|
Jan 15 1998 2:10:31AM | Jan 15 1998 2:00:00AM |
Apr 19 1998 1:31:20PM | Apr 19 1998 2:00:00PM |
Dec 20 1998 3:29:55PM | Dec 20 1998 3:00:00PM |
Dec 31 1998 11:59:59PM | Jan 1 1999 12:00:00AM |
NULL | NULL |
以下の式は、DATE_SHIPPEDカラムの各日付の分の部分を丸めます。
ROUND( DATE_SHIPPED, 'MI' )
DATE_SHIPPED | RETURN VALUE |
---|
Jan 15 1998 2:10:30AM | Jan 15 1998 2:11:00AM |
Apr 19 1998 1:31:20PM | Apr 19 1998 1:31:00PM |
Dec 20 1998 3:29:55PM | Dec 20 1998 3:30:00PM |
Dec 31 1998 11:59:59PM | Jan 1 1999 12:00:00AM |
NULL | NULL |