説明
この関数は、DATE、TIMESTAMP、TIMESTAMP WITH TIME ZONE、TIMESTAMP WITH LOCAL TIME ZONE、INTERVAL YEAR TO MONTH、または INTERVAL DAY TO SECOND などのデータ型の値を、データベースの文字セットから国家文字セットのデータ型に変換します。
構文
TO_NCHAR({ datetime | interval }[, fmt [, 'nlsparam' ] ])
パラメータの説明
| パラメータ | 説明 |
|---|---|
| datetime | DATE、TIMESTAMP、TIMESTAMP WITH TIME ZONE、TIMESTAMP WITH LOCAL TIME ZONE、INTERVAL DAY TO SECOND、および INTERVAL YEAR TO MONTHデータ型の値。 |
| interval | INTERVAL DAY TO SECONDおよびINTERVAL YEAR TO MONTHデータ型の値。間隔単位は以下のとおりです:
|
| fmt | 出力形式を指定します。省略可能です。パラメータfmtを指定しない場合、パラメータdatetimeの値は次の形式でVARCHAR2データ型に変換されます:
|
| nlsparam | 返される月と日付で使用する言語を制御します。オプションです。 |
返り値のタイプ
国別文字セットを返すデータ型。
例
TO_NCHAR関数を使用して、現在の日付をそれぞれYYYY/MM/DDとDSDL形式で返します。obclient> SELECT TO_NCHAR(SYSDATE,'yyyy/mm/dd'),TO_NCHAR(SYSDATE,'DSDL') FROM DUAL; +--------------------------------+----------------------------------------+ | TO_NCHAR(SYSDATE,'YYYY/MM/DD') | TO_NCHAR(SYSDATE,'DSDL') | +--------------------------------+----------------------------------------+ | 2021/12/09 | 12/09/2021 Thursday, December 09, 2021 | +--------------------------------+----------------------------------------+ 1 row in set時間間隔値を数値形式の間隔値に変換し、返却言語を
AMERICANに設定します。obclient> SELECT TO_NCHAR(interval'90' MINUTE, 'SS-MI-HH', 'nls_language = AMERICAN') FROM DUAL; +-----------------------------------------------------------------+ | TO_NCHAR(INTERVAL'90'MINUTE,'SS-MI-HH','NLS_LANGUAGE=AMERICAN') | +-----------------------------------------------------------------+ | +00 01:30:00 | +-----------------------------------------------------------------+ 1 row in set