oracle 聚合函数求和后,小数点前面的零不显示
如SUM(金额)as收入,使用TO_CHAR(收入,'9999990.999')后小数点前面的零还是不显示,TO_CHAR(SUM(金额),'9999990.999')也...
如 SUM(金额) as 收入 ,使用TO_CHAR(收入,'9999990.999')后小数点前面的零还是不显示,TO_CHAR(SUM(金额),'9999990.999')也不行
展开
3个回答
2013-05-19
展开全部
你的 Oracle 版本是多少呀?
我这里测试了, 你那种写法,是没有问题的啊。
CREATE TABLE test_tochar(
id INT,
val decimal(10,4)
);
INSERT INTO test_tochar VALUES(1, 0.0001);
INSERT INTO test_tochar VALUES(2, 0.0012);
INSERT INTO test_tochar VALUES(3, 0.0123);
INSERT INTO test_tochar VALUES(4, 0.1234);
INSERT INTO test_tochar VALUES(5, 1.2345);
INSERT INTO test_tochar VALUES(6, 12.3456);
INSERT INTO test_tochar VALUES(7, 123.4567);
INSERT INTO test_tochar VALUES(8, 1234.5678);
INSERT INTO test_tochar VALUES(9, 12345.6789);
默认的显示方式。
SQL> COLUMN "Result" FORMAT A15
SQL> SELECT id, TO_CHAR(val) Result FROM test_tochar;
ID RESULT
---------- ---------------
1 .0001
2 .0012
3 .0123
4 .1234
5 1.2345
6 12.3456
7 123.4567
8 1234.5678
9 12345.6789
已选择9行。
注意到, 小于 1 的数据, 被 to_char 成 .0001 了。 而不是 0.0001
修改 TO_CHAR 的格式化参数:
SQL> SELECT id, TO_CHAR(val, '999,990.999') Result FROM test_tochar;
ID RESULT
---------- ---------------
1 0.000
2 0.001
3 0.012
4 0.123
5 1.235
6 12.346
7 123.457
8 1,234.568
9 12,345.679
已选择9行。
展开全部
pl/sql设置的问题,工具-——首选项——窗口类型——sql 窗口,不勾选
"数字字段 to char“。
"数字字段 to char“。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
把你语句写全了,我给你改,这个你用to_char没法解决,得用连接字符串的方式搞定
比如
case when 收入 like '.%' then '0'||收入 else 收入 end
这样的方式
比如
case when 收入 like '.%' then '0'||收入 else 收入 end
这样的方式
本回答被提问者和网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询