sqlserver直接取整_SQLSERVER取整并“看到要害处”

在数据处理中,我们经常遇到舍入,并且“看到点成角度”

舍入: 通常可以使用舍入函数语法: 舍入(@ data,@ digit),

例如: 舍入(23.5729,3)= 23.5730

请参见子输入角度: 即最后一位大于0.

如果存在(从ID为OBJECT_ID('DBO.CEIL_IN')的SYSOBJECTS中选择1)

DROP FUNCTION CEIL_IN

GO

创建函数ceil_in(@number varchar(20),@ digit int)-两个参数sql decimal 四舍五入,待处理的@number数据; @digit需要保留一些小数位.

返回varchar(21)

开始

声明@int_part varchar(10),@ decimal_partvarchar(10),@ decimal_part1 varchar(10)

如果charindex('. ',@ number)<> 0

开始

-将@number分成整数和小数部分

set @int_part = left(rtrim(@number),charindex('. ',@ number,0))

set @decimal_part = right(rtrim(@number),len(rtrim(@number))-charindex('. ',rtrim(@number),0))

如果len(@decimal_part)> @digit

开始

设置@小数部分1 =左(@小数部分sql decimal 四舍五入,@数字)+'. ' +右(@ decimal_part,len(@decimal_part)-@ digit)-将小数部分拆分为另一个小数

如果len(上限(@ decimal_part1))<> @数字和左数(@ decimal_part1,1)<>'0'

set @number = cast((cast(cast(cast(@number as float)as int)+ 1)as varchar(10))

其他

开始

设置@decimal_part =上限(@ decimal_part1)

设置@number = @int_part + @decimal_part

结束

结束

结束

返回(@number)

结束

例如ceil_in(23.111,2)= 23.12

PS: 如果只需要保留整数,则还可以使用CEILING(@data),但只能保留整数.

本文来自电脑杂谈,转载请注明本文网址:

http://www.pc-fly.com/a/ruanjian/article-163674-1.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值