在以下查询中,我尝试将十进制标记更改为comma
SELECT to_number('12.5678', '99D9999', NLS_NUMERIC_CHARACTERS =', ') FROM dual;
当我在sqlDeveloper中执行此查询时,oracle说错过了正确的paranthesis。 请注意我有语言环境(DE,Gemany)。
可能是什么原因?
感谢您的任何建议
答案 0 :(得分:5)
在SQL中 - 与PL / SQL相反 - 第三个参数是字符串:
SELECT to_number('12.5678', '99D9999', 'NLS_NUMERIC_CHARACTERS ='', ''')
FROM dual;
另见:
http://docs.oracle.com/cd/B19306_01/server.102/b14200/functions191.htm
答案 1 :(得分:1)
NLS_NUMERIC_CHARACTERS =', '
应作为varchar
select TO_NUMBER('$94 567,00', 'L999G999D00', 'NLS_NUMERIC_CHARACTERS ='', ''') FROM dual;
http://docs.oracle.com/cd/E11882_01/server.112/e26088/functions211.htm#SQLRF06140