将"$"美元符号格式化为包含 SUM() 的 SQL 选择语句?



我正在尝试格式化一个'$'美元符号为" c"列,这是其他两个列的所有行的总和乘以在一起。我首先将其变成一个字符,如下所示:

   SELECT TO_CHAR(SUM(a * b)) AS "c"
   FROM table1;

可以正常工作,但是当我通过添加'l9,999.99'格式化格式时,它会出现一个错误:

   SELECT TO_CHAR(SUM(a * b, 'L9,999.99') AS "c"
   FROM table1;

所以我尝试进行演员:

   SELECT TO_CHAR(CAST(SUM(a * b) AS NUMERIC(10,2)) AS "c"
   FROM table1;

但是什么都没有。

如何使用to_char和/或cast?

供参考,我的预期输出是转:

    C
    10
    10.05
    11.50

进入

    C
    $10
    $10.05
    $11.50

扩展JJJ的评论:缺少一个偏差,以下内容应有效:

SELECT TO_CHAR(SUM(a * b), 'L9,999.99') AS "c"
FROM table1;

语句

SELECT TO_CHAR(SUM(a * b, 'L9,999.99') AS "c"
FROM table1;

将增加编译时间错误:

 ORA-00909: invalid number of arguments

最新更新