-1

こんにちは私は以下のクエリを使用して、ORACLEToadのCLOBフィールドから「DD-MM-YYYY」の形式で日付を取得しています。

 Select ID, NVL(TO_CHAR(xmltype(XML_RAW).extract('//ROWSET//ROW//MJR_V//MJR_V_ROW//EARLIEST_ACCEPT_DATE/text()').getStringVal(), 'DD-MM-YYYY'),'') 
 AS Dateformat from table1 where ID = 102

エラーが発生します:

ORA:01722: Invalid number

しかし、上記のクエリダイレクトDB列(CLOBフィールドではない)を使用すると、正常に実行されます。

 Select ID, NVL(TO_CHAR(Start_Date, 'DD-MM-YYYY'),'') 
 AS Dateformat from table1 where   ID = 102

解決策を教えてください。

4

1 に答える 1

0

to_charvarchar2で実行しないでください

to_char関数は引数として日付 (または数値) を取得し、それを varchar2 に変換します。
varchar2 で使用すると、Oracle は暗黙的に文字列を日付に変換します。NLS_DATE_FORMAT

したがって、おそらく次のようなことをする必要があります

于 2012-12-20T06:51:17.867 に答える