以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  select后面的多余的0如何去掉?  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=159071)

--  作者:happyft
--  发布时间:2020/12/12 16:58:00
--  select后面的多余的0如何去掉?
比如如下语句:
SELECT  CAST(1.0 / 5 AS DECIMAL(12, 3))
显示结果为0.200,不管decimal设置了几个小数点,如果结果后面有多余的0,不想显示多的0要如何才能实现?
即显示为0.2

谢谢!

--  作者:有点蓝
--  发布时间:2020/12/12 17:16:00
--  
试试

SELECT  CAST(1.0 / 5 AS DECIMAL)

SELECT  CAST(1.0 / 5 AS numeric)

SELECT  CAST(1.0 / 5 AS real)

--  作者:HappyFt
--  发布时间:2020/12/12 17:44:00
--  
前面两个都不行,如果用real,或者float有时表中会出现很多小数,比如 之类的,比如0.299999999999之类的,不确定
就是想用固定了小数点的,但后面不显示多余的0,因为很多表中如单价等有四五位小数,类似1.12456,
但如果后面是0时显示为0.02000感觉得容易出错,不方便识别


--  作者:有点蓝
--  发布时间:2020/12/13 20:14:00
--  
网上的方法,要么用real,或者float;要么自己建一个函数处理:https://blog.csdn.net/a4610a/article/details/6212777