このトピックでは、基本的な算術演算子プラス記号 (+) およびマイナス記号 (-) の機能と、日付と時刻の値を処理するために使用できる関数について説明します。
表 1は、基本的な算術演算子プラス記号 (+) およびマイナス記号 (-) の機能を示しています。表 2は、日付と時刻の値を処理するために使用できるすべての関数を示します。 これらの関数の詳細については、次のトピックを参照してください。 フォーマット関数の詳細については、「データ型をフォーマットするための関数」をご参照ください。 このトピックを始める前に、[日付と時刻の種類] の日付と時刻の種類に関する背景情報に精通していることを確認してください。
表1. 日付 /時刻演算子の
演算子 | 例 | 結果 |
+ | 日付 '2001-09-28 '+ 7 | 05-OCT-01 00:00:00 |
+ | タイムスタンプ '2001-09-28 13:30:00 '3 | 01-OCT-01 13:30:00 |
- | 日付 '2001-10-01 ' - 7 | 24-SEP-01 00:00:00 |
- | タイムスタンプ '2001-09-28 13:30:00 ' - 3 | 25-SEP-01 13:30:00 |
- | TIMESTAMP '2001-09-29 03:00:00 ' - TIMESTAMP '2001-09-27 12:00:00' | @ 1日15時間 |
表 2 に示す日付と時刻関数では、dateデータ型とTIMESTAMPデータ型を相互に変換できます。
表2. 日付 /時刻関数の
関数 | 戻り値のタイプ | 説明 | 例 | 結果 |
月を追加 (日付、番号) | 日付 | 日付に月を追加します。 | 月を追加する ('28-FEB-97 '、3.8) | 5月31日-97 00:00:00 |
現在の日付 | 日付 | 現在の日付。 | 現在の日付 | 04-JUL-07 |
現在のタイムスタンプ | TIMESTAMP | 現在の日付と時刻を返します。 | 現在のタイムスタンプ | 04-JUL-07 15:33:23.484 |
抽出 (TIMESTAMPからのフィールド) | DOUBLE PRECISION | サブフィールドを取得します。 | エキス (TIMESTAMP '2001-02-16 20:38:40 'からの時間) | 20 |
最後の日 (日付) | 日付 | 指定された日付で表される月の最終日を返します。 与えられた日付が時間部分を含む場合、それは変更されずに結果に繰り越される。 | 先週 ('14-APR-98 ') | 30-APR-98 00:00:00 |
LOCALTIMESTAMP [ (precision) ] | TIMESTAMP | 現在の日時 (現在のトランザクションの開始) 。 | LOCALTIMESTAMP | 04-JUL-07 15:33:23.484 |
その間の数か月 (日付、日付) | NUMBER | 2つの日付の間の月数。 | その間の数か月 ('28-FEB- 07 '、'30-N0V-06') | 3 |
次の日 (日付、dayofweek) | 日付 | 指定された日付に続くdayofweekに落ちる日付。 | 次の日 ('16-APR- 07 '、'FRI') | 2 0-APR-07 00:00:00 |
新しい時間 (日付、VARCHAR、VARCHAR) | 日付 | 日付と時刻を代替タイムゾーンに変換します。 | 新しい時間 (T0日 '2005/05/29 01:45 '、'AST' 、'PST ') | 2005/05/29 21:45:00 |
ラウンド (DATE [, format ]) | 日付 | 日付は形式に従って丸められます。 | ラウンド (T0日 ('29-MAY- 05 ') 、'M0N') | 01-JUN-05 00:00:00 |
SYS EXTRACT UTC (タイムゾーン付きタイムスタンプ) | TIMESTAMP | TIMESTAMP | SYS EXTRACT UTC (キャスト ('24 -MAR-11 12:30:00PM - 04:00 'タイムゾーン付きタイムスタンプとして)) | 2 4-MAR-11 16:30:00 |
SYSDATE | 日付 | 現在の日付と時刻を返します | SYSDATE | 01-AUG-12 11:12:34 |
SYSTIMESTAMP() | TIMESTAMP | 現在の日付と時刻を返します | SYSTIMESTAMP | 01-AUG-12 11:11:23.665 229 -07:00 |
TRUNC(DATE [format ]) | 日付 | フォーマットに従って切り捨てる。 | TRUNC(T0日 ('2 9-MAY- 05 ') 、'MON') | 5月1日-05 00:00:00 |