ORACLE SQL リファレンス(逆引き)

ORACLE SQL リファレンス

Web oracle.se-free.com
日付データの丸め/切捨て(ROUND、TRUNC)
スポンサード リンク

日付データの丸め/切捨ては、ROUND関数、TRUNC関数を使用する

ROUND( 日付データ, 日付書式) 日付データを日付書式で指定した単位で四捨五入します
TRUNC( 日付データ, 日付書式) 日付データを日付書式で指定した単位で切り捨てます

日付書式
日付書式 単位 ROUND関数 TRUNC関数
YYYY
YY
6月30日以前は当年の、7月1日以降は、翌年の1月1日0時0分0秒に四捨五入 当年の1月1日0時0分0秒に切り捨て
MM 15日以前は当月の、16日以降は、翌月の1日0時0分0秒に四捨五入 当月の1日0時0分0秒に切り捨て
DD 11時59分以前は当日の、12時以降は、翌日の0時0分0秒に四捨五入 当日の0時0分0秒に切り捨て
HH12
HH24
29分以前は当時の、30分以降は、翌時の0分0秒に四捨五入 当時の0分0秒に切り捨て
MI 29秒以前は当分の、30秒以降は、翌分の0秒に四捨五入 当分の0秒に切り捨て


例1) ''2005/10/26''を年単位で四捨五入します。(ROUND)
select
  round(to_date('2005/10/26','yyyymmdd'),'yyyy')
from dual

結果は、'2006/01/01 00:00:00'が返されます。


例2) ''2005/10/26''を年単位で切捨てます。(TRUNC)
select
  trunc(to_date('2005/10/26','yyyymmdd'),'yyyy')
from dual

結果は、'2005/01/01 00:00:00'が返されます。


スポンサード リンク


システム日付を取得する(SYSDATE、SYSTIMESTAMP)
システム日付を取得する(CURRENT_DATE、CURRENT_TIMESTAMP)
カレントセッションのタイムゾーンを取得する(SESSIONTIMEZONE)
日付データ/文字列データの変換(TO_DATE、TO_CHAR)
日にちの加算/減算
時間の加算/減算
月の加算/減算(ADD_MONTHS)
指定日付から次の指定曜日の日付を取得する(NEXT_DAY)
日付データの丸め/切捨て(ROUND、TRUNC)
生年月日から現在の年齢を求める(MONTHS_BETWEEN)
月末日付を取得する(LAST_DAY)
日付の和暦/西暦変換

SQL(DML2) へ
忘れっぽいエンジニアのオラクルSQLリファレンス TOPへ