0

谁能解释这个 SQL 有什么问题?

SELECT TO_CHAR(1890.55,'$9,99D9V99') FROM DUAL;

它抛出一个错误:

ORA-01481:无效的数字格式模型
01481。00000 -“无效
的数字格式模型原因:用户试图通过 TO_CHAR 将数字转换为字符串或通过 TO_NUMBER 将字符串转换为数字,并且提供了无效的数字格式模型参数.
行动:查阅您的手册。

4

2 回答 2

1

您的格式字符串未在十进制说明符 ( ) 左侧为您提供的数字指定足够的数字D。此外,您不能在同一格式字符串中混合,和格式化字符,并且在格式字符串中不能有多个or或 or 。您可以使用DVD.

$9,999.99

或者

$9G999D99

或者

$9,999V99

虽然最后一个显然不会显示小数点。

祝你好运。

于 2017-07-30T17:17:11.340 回答
0

用这个;

select to_char(1890.55,'fm$999G990D00','NLS_NUMERIC_CHARACTERS = ''.,''') from dual
于 2017-07-30T17:10:22.963 回答