文档章节

sqlserver 四舍六入五成双(2)

小菜鸟要起飞
 小菜鸟要起飞
发布于 2015/05/15 16:07
字数 171
阅读 62
收藏 0
if object_id('fnRound') is not null 

  drop function fnRound 

  GO 

  create function fnRound(@num float,@i int) 

  returns varchar(20) 

  as 

  begin 

      declare @str varchar(20)     /*转换成字符类型*/ 

      declare @str2 varchar(20)    /*小数位数后面的字符串*/ 

      declare @str3 varchar(2)     /*小数位数字符串*/ 

      set @str = convert(varchar,@num) 

      if (charindex('.',reverse(@str)) <= 0) 

      begin 

      if @i > 0 

   begin 

   set @str = @str + '.' 

   while @i > 0 

    begin 

    set @str  = @str + '0' 

    set @i = @i - 1 

    end 

   end 

   return @str 

   end 

      set @str2 = reverse(substring(reverse(@str),1,charindex('.',reverse(@str)) - 1 - @i)) 

      set @str3 = substring(@str,charindex('.',@str) + 1,@i) 

      if @str2%5 = 0 and @str3%2 = 0   /*如果符合"五成双"*/ 

          set @str = substring(@str,1,charindex('.',@str) + @i) 

      else    /*否则四舍五入*/ 

          set @str = convert(varchar,round(@num,@i)) 

      RETURN @str 

  end 

  GO

© 著作权归作者所有

共有 人打赏支持
小菜鸟要起飞
粉丝 0
博文 31
码字总数 8551
作品 0
海淀
程序员
私信 提问
高手速来, 1.575不进位 1.475进位, 1.275又不进位

据我所知四舍五入一般有两种规则 1. 四舍五入, 就是我们小学学的 不多说 2. 四舍六入五凑偶 2.1 当计算位<>5 : 四舍六入 2.2 当计算位=5 : 是否为末位? 是: 前一位为偶数? 舍去 否则 进位 否...

nsnail
2012/06/19
917
12
2007北京市小学生程序设计友谊赛详细答案

第1题 解法一:在cmath或math.h中,有个round()函数,可以实现四舍五入。 注意:网络上有些人说round()不是四舍五入,而是四舍六入五成双,即round(5.5) = 6, round(6.5) = 6。 我通过在Dev...

海天一树X
今天
0
0
招sql注入漏洞 渗透技术 渗透测试人员 可兼职

负责承接的安全项目,主要以渗透测试 为 主。 1、精通web攻击、渗透技术,精通 asp/asp.net/php/java代码防护; 2、熟练掌握windows/nux/unix攻防 技 术; 3、熟练掌握SQL注入、文件上传、 ...

liujian1
2015/06/09
512
1
WAF Bypass数据库特性(MSsql探索篇)

0x01 背景 探索玩了Mysql特性,继续来探索一下MSsql特性。 0x02 测试 常见有5个位置即:select * from admin where id=1【位置一】union【位置二】select【位置三】1,2,db_name()【位置四】f...

bypass
2017/07/02
0
0
个人对于JavaScript中Number.toFixed()方法的理解

需求:对浮点数进行四舍五入精度获取。 问题:直接使用会出现异常的舍入情况。 原因:计算机浮点数存储是二进制,的实际的精度确认规则是四舍六入五成双,逢四下舍,逢六入一,逢五时,根据浏...

peakedness丶
10/26
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Js中DOM事件绑定分析

在这篇文章中小编给大家整理了关于JS中DOM事件绑定的相关知识点,写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下。如有不足之处,欢迎批评指正。 #Js事件绑定 Ja...

前端攻城小牛
4分钟前
1
0
指令、伪操作、伪指令和宏指令区别

汇编语言程序中的语句可以由指令、伪指令和宏指令组成。 指令:每一条指令都对应一种CPU操作。 伪指令又称为伪操作,它是在对源程序汇编期间由汇编程序处理的操作,它们可以完成如处理器选择...

二营长意大利炮
5分钟前
0
0
SQL Server SQL语句删除索引

当删除索引提示超时时候,可以使用SQL语句删除索引,可以避免删除索引超时问题。 use [数据库名]drop index [索引名称] on [表名]

产吅经理
5分钟前
0
0
深入解析Axios 常用的请求方法别名

下面小编就为大家分享一篇Axios 常用的请求方法别名,写的十分的全面细致,具有一定的参考价值,对此有需要的朋友可以参考学习下。如有不足之处,欢迎批评指正。 #Axios 是一个基于 promise ...

前端攻城老湿
11分钟前
0
0
深入解析Vue开发动态刷新Echarts组件的教程

需求背景:dashboard作为目前企业中后台产品的“门面”,如何更加实时、高效、炫酷的对统计数据进行展示,是值得前端开发工程师和UI设计师共同思考的一个问题。今天就从0开始,封装一个动态渲...

peakedness丶
35分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部