TO_TIMESTAMP

構文

目的

TO_TIMESTAMPは、charTIMESTAMPデータ型の値に変換します。

charには、CHARVARCHAR2NCHARまたはNVARCHAR2のデータ型の文字列と評価される任意の式を指定できます。

オプションのDEFAULT return_value ON CONVERSION ERROR句により、charからTIMESTAMPへの変換中にエラーが発生した場合にこのファンクションで戻される値を指定できます。charの評価中にエラーが発生した場合、この句による影響はありません。return_valueは式またはバインド変数にすることができ、CHARVARCHAR2NCHARまたはNVARCHAR2のデータ型の文字列、あるいはNULLと評価される必要があります。charTIMESTAMPに変換する場合と同じ方法を使用して、return_valueTIMESTAMPに変換されます。return_valueTIMESTAMPに変換できない場合は、エラーが戻されます。

オプションのfmtは、charの書式を指定します。fmtを指定しない場合、charはデフォルト書式のTIMESTAMPデータ型である必要があります。このデータ型は、NLS_TIMESTAMP_FORMAT初期化パラメータによって決まります。オプションの'nlsparam'引数は、日付変換のTO_CHARファンクションの場合と同じ用途で使用されます。

このファンクションは、CLOBデータを直接的にサポートしていません。ただし、暗黙的なデータ変換を使用してCLOBを引数として渡すことはできます。

関連項目:

詳細は、「データ型の比較規則」を参照してください。

次の例では、文字列をタイムスタンプに変換します。文字列がデフォルトのTIMESTAMP書式ではないため、書式マスクを指定する必要があります。

SELECT TO_TIMESTAMP ('10-Sep-02 14:10:10.123000', 'DD-Mon-RR HH24:MI:SS.FF')
   FROM DUAL;

TO_TIMESTAMP('10-SEP-0214:10:10.123000','DD-MON-RRHH24:MI:SS.FF')
---------------------------------------------------------------------------
10-SEP-02 02.10.10.123000000 PM

次の例では、無効な月を指定していることで、指定した式をTIMESTAMP値に変換できないため、デフォルト値のNULLが戻されます。

SELECT TO_TIMESTAMP ('10-Sept-02 14:10:10.123000'
       DEFAULT NULL ON CONVERSION ERROR,
       'DD-Mon-RR HH24:MI:SS.FF',
       'NLS_DATE_LANGUAGE = American') "Value"
  FROM DUAL;

関連項目:

デフォルトのTIMESTAMP書式の詳細は、NLS_TIMESTAMP_FORMAT初期化パラメータを参照してください。書式マスクの指定の詳細は、「日時書式モデル」を参照してください