!!!DB2 日付操作 [DB2][Database]{{category SQL}} *http://www.ibm.com/developerworks/jp/data/library/dataserver/techdoc/datestimes.html {{amazon 4774145971}} DB2ユーザー必携! !!SQLを使用して現在の日付、時刻、およびタイムスタンプを取得 SELECT current date FROM sysibm.sysdummy1 SELECT current time FROM sysibm.sysdummy1 SELECT current timestamp FROM sysibm.sysdummy1 !!関数を使用して年、月、日、時、分、秒、およびマイクロ秒の部分を個別に抽出 YEAR (current timestamp) MONTH (current timestamp) DAY (current timestamp) HOUR (current timestamp) MINUTE (current timestamp) SECOND (current timestamp) MICROSECOND (current timestamp) !!2つの日付の間の日数を計算 days (current date) - days (date('1999-10-22')) !!英語による日付および時刻計算 current date + 1 YEAR current date + 3 YEARS + 2 MONTHS + 15 DAYS current time + 5 HOURS - 3 MINUTES + 10 SECONDS !!マイクロ秒の部分をゼロにリセットして、現在のタイムスタンプを取得 CURRENT TIMESTAMP - MICROSECOND (current timestamp) MICROSECONDS !!文字ストリングを日付値または時刻値に変換 TIMESTAMP ('2002-10-20-12.00.00.000000') TIMESTAMP ('2002-10-20 12:00:00') DATE ('2002-10-20') DATE ('10/20/2002') TIME ('12:00:00') TIME ('12.00.00') !!SQL日付/時刻関数 ,関数,内容 ,DAYNAME,引き数の日の部分の曜日名(例:Friday)を含む大文字小文字混合文字ストリングを戻します。 ,DAYOFWEEK,引き数の曜日を107の範囲の整数値として戻します。1は日曜日を表します。 ,DAYOFWEEK_ISO,引き数の曜日を107の範囲の整数値として戻します。1は月曜日を表します。 ,DAYOFYEAR,引き数の年間通算日を、10366の範囲の整数値として戻します。 ,DAYS,日付の整数表記を戻します。 ,JULIAN_DAY,紀元前(ユリウス暦の起点)からの経過日数を示す整数値を、引き数で指定した日付値に戻します。 ,MIDNIGHT_SECONDS,午前0時から引き数で指定した時刻値までの秒数を表す0086400の範囲の整数値を戻します。 ,MONTHNAME,引き数の月の部分の名前(例:January)を含む大文字小文字混合文字ストリングを戻します。 ,TIMESTAMP_ISO,日付、時刻、またはタイムスタンプの引き数に基づくタイムスタンプ値を戻します。 ,TIMESTAMP_FORMAT,文字テンプレートを使って解釈された文字ストリングからタイムスタンプを戻します。 ,TIMESTAMPDIFF,2つのタイムスタンプ間の差に基づいて、最初の引き数によって定義されたタイプの間隔数の見積もりが戻されます。 ,TO_CHAR,文字テンプレートを使ってフォーマットされたタイムスタンプの文字表記を戻します。TO_CHARは、VARCHAR_FORMATの同義語です。 ,TO_DATE,文字テンプレートを使って解釈された文字ストリングからタイムスタンプを戻します。TO_DATEは、TIMESTAMP_FORMATの同義語です。 ,WEEK,引き数の年間通算週番号を1054の範囲の整数値として戻します。週は日曜日から始まります。 ,WEEK_ISO,引き数の年間通算週番号を1053の範囲の整数値として戻します。 {{include_html redirect_html, "!DB2_DATE"}}