Sql 不同数字的两种不同格式
对于不同的数字有两种不同的格式,有没有简单明了的解决方案。Sql 不同数字的两种不同格式,sql,formatting,Sql,Formatting,对于不同的数字有两种不同的格式,有没有简单明了的解决方案。 例如,0.00应为0,所有其他数字应为x.xxx 到目前为止,我的解决方案是: select decode(to_char(0.000, '90D999'),'0.000', 0, (to_char (0.000, '99990D99999'))) from dual 我不高兴,因为我认为有一个更简单的解决方案。您也可以使用CASE-WHEN SELECT (CASE WHEN MY_VALUE=0 THEN '0' ELSE to_
例如,0.00应为0,所有其他数字应为x.xxx 到目前为止,我的解决方案是:
select decode(to_char(0.000, '90D999'),'0.000', 0, (to_char (0.000, '99990D99999'))) from dual
我不高兴,因为我认为有一个更简单的解决方案。您也可以使用CASE-WHEN
SELECT (CASE WHEN MY_VALUE=0 THEN '0' ELSE to_char(MY_VALUE, '90D999') END)
FROM DUAL
我认为这更具可读性-但这是主观的…您可以使用简单的大小写表达式使其稍微清晰一些:
select case my_value when 0 then '0' else to_char(my_value, '90D999') end
from dual;
看我不是在10分钟前发布了这个精确的解决方案吗?(好的,语法有点不同)