sqlserver把小数点后面多余的0去掉
Sql中想把小数点后多余的0去掉,怎么办?
select 5000/10000.0 --想变成0.5
select 5500/10000.0 --想变成0.55
select 5550/10000.0 --想变成0.555
select 5555/10000.0 --想变成0.5555
其结果分别为:0.5000000 0.5500000 0.5550000 0.5555000
一、如果想去掉数字5后面多余的0 ,需要转化一下:
select CONVERT(FLOAT,5000/10000.0) --想变成0.5
select CONVERT(FLOAT,5500/10000.0) --想变成0.55
select CONVERT(FLOAT,5550/10000.0) --想变成0.555
select CONVERT(FLOAT,5555/10000.0) --想变成0.5555
其结果分别为: 0.5 0.55 0.555 0.5555
二、创建函数:
在sql server 建个函数ClearZero,使用这个函数去掉小数点后面多余的零。
CREATE function [dbo].[ClearZero](@inValue varchar(50))
returns varchar(50)
as
begin
declare @returnValue varchar(20)
if(@inValue='')
set @returnValue='' --空的时候为空
else if (charindex('.',@inValue) ='0')
set @returnValue=@inValue --针对不含小数点的
else if ( substring(reverse(@inValue),patindex('%[^0]%',reverse(@inValue)),1)='.')
set @returnValue =left(@inValue,len(@inValue)-patindex('%[^0]%',reverse(@inValue))) --针对小数点后全是0的
else
set @returnValue =left(@inValue,len(@inValue)- patindex('%[^0]%.%',reverse(@inValue))+1) --其他任何情形
return @returnValue
end
另: 在c#中呢?
decimal d = 0.0500m;
d.ToString("0.##")就出来了
也可以这样 string.Format("{0:0.##}",d000)
sqlserver把小数点后面多余的0去掉的更多相关文章
- asp.net 去掉小数点后面多余的0,本身为0则不显示
很多时候,比如gridview内,不想现实从数据库带出的多余小数 ,比如 4.01000 ,可显示为 4.01 如果是 0.00000, 则显示为空白 /// <summary> /// ...
- asp.net 去掉小数点后面多余的0
很多时候,比如gridview内,不想现实从数据库带出的多余小数 ,比如 4.01000. 那就可以做一个函数: /// <summary> /// 去掉小数点后多余的0, 0本身显示为0 ...
- Java——去掉小数点后面多余的0
当小数点后位数过多,多余的0没有实际意义,根据业务需求需要去掉多余的0.后端存储浮点型数据一般会用到Bigdecimal 类型,可以调用相关方法去掉小数后多余0,然后转为string. public ...
- 将double型小数点后面多余的零去掉
/** 函数功能:将数值小数点后面多余的零清空.* 参数描述:* [in] aSource - 输入的源数值:* [out] aDestination - 输出截取后的数值* ...
- iOS 去掉小数点后边多余的0
-(NSString*)removeFloatAllZero:(NSString*)string { NSString * testNumber = string; NSString * outNum ...
- js取整,保留小数位数、四舍五入、科学记数法及去掉数字末尾多余的0
1.向下取整 var num1 = 12.10345; var num2 =12.9801; var newnum1=Math.floor(num1) //结果 12 var newnum2= ...
- 【代码笔记】iOS-浮点数处理并去掉多余的0
一,代码. - (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view. ...
- 使用Java正则表达式去掉Double类型的数据后面多余的0
方法 /** * 使用java正则表达式去掉多余的.与0 * @param s * @return */ public static String subZeroAndDot(String s){ i ...
- mysql 中decimal中去掉后面多余的0
#去除Decimal后面多余的0 #处理前SELECT '0.12000','1.203010','-0.20' #处理后SELECT 0+CAST('0.12000' AS CHAR),0+CAST ...
随机推荐
- Unity3D游戏开发最佳实践20技巧(三)
[文本] 38.假设你有非常多的剧情文本.那么把他们放到一个文件中面. 不要把他们放到Inspector的字段中去编辑. 这些须要做到不打开Unity,也不用保存Scene就能够方便的改动. 39.假 ...
- Escape字符总结
有如下的 escape字符. 对于十进制来说,\后面只涵盖3个字符,比如\1234,是\123和字符4. 但是对于十六进制,后面会涵盖四个字符,比如\x1234,后面的四个字符都在\的涵盖范围内.
- Jmeter-Maven-Plugin高级应用:Log Levels
Log Levels Pages 12 Home Adding additional libraries to the classpath Advanced Configuration Basic C ...
- 【pyhon】理想论坛爬虫1.07 退出问题,乱码问题至此解决,只是目前速度上还是遗憾点
在 https://www.cnblogs.com/mengyu/p/6759671.html 的启示下,解决了乱码问题,在此向作者表示感谢. 至此,困扰我几天的乱码问题和退出问题都解决了,只是处理速 ...
- Weixin 之 微信二维码扫描下载 Apk
制作的手机 app 需要上线,生成二维码扫描进行下载,把生成好的apk挂在服务器端,将地址复制下来,通过草料二维码(http://cli.im/)生成一个二维码. 在更多中,你会看到有个app的选项, ...
- 4667 Building Fence 解题报告
题意:给n个圆和m个三角形,且保证互不相交,用一个篱笆把他们围起来,求最短的周长是多少. 解法1:在每个圆上均匀的取2000个点,求凸包周长就可以水过. 解法2:求出所有圆之间的外公切线的切点,以及过 ...
- eclipse/STS 切换目录视图
- ubuntu终止进程的方法
在ubuntu中,终止一个进程或终止一个正在运行的程序,一般是通过 kill .killall.pkill.xkill 等进行. 先看两个例子: 例子一:结束某个程序,如Firefox 键入命令: ...
- MVC Linq动态排序
在nuget 中searh System.Linq.Dynamic 安装对应的版本, 这样都可以使用了 var orderExpression = string.Format("{0} {1 ...
- android缓存具体解释
Android缓存: 採用缓存,能够进一步大大缓解数据交互的压力.又能提供一定的离线浏览.下边我简略列举一下缓存管理的适用环境: 1. 提供网络服务的应用 2. 数据更新不须要实时更新,哪怕是3-5分 ...