方法1:

SELECT CAST('123.456' as decimal) 将会得到 123(小数点后面的将会被省略掉)。

如果希望得到小数点后面的两位。

则需要把上面的改为

SELECT CAST('123.456' as decimal(38, 2)) ===>123.46

说明1:

这里的decimal英文为: 小数, 十进制

decimal(38,2)

这里的38是这个小数的位数有多少位, 一般最大不超过38位, 所以写38是不会出错的!

如果:

SELECT CAST('123.456' as decimal(2, 2))

就会出错, 为什么呢, 因为这个123.456小数点后是3位值, 所以这个38这个位置最少是3!

说明2:

decimal后面的参数中的2是小数点后取几位, 是2就取两位, 是3就取三位! 并且是四舍五入后的结果!

说明3:

cast应该就是转换数值的意思了

自动四舍五入了!

方法2:

SELECT ROUND(123.75633, 2, 1), ROUND(123.75633, 2)

上面的SQL得到的2个值是不一样的,前一个是:123.75000,后一个是:123.76000。

因为前者在进行四舍五入之前,小数点后已经被截取,保留了2位。

而后者则没有被截取,四舍五入时自然就会得到123.76000

ROUND

返回数字表达式并四舍五入为指定的长度或精度。

语法

ROUND ( numeric_e-xpression , length [ , function ] )

参数

numeric_e-xpression

精确数字或近似数字数据类型类别的表达式(bit 数据类型除外)。

length

是 numeric_e-xpression 将要四舍五入的精度。length 必须是 tinyint、smallint 或int。当 length 为正数时,numeric_e-xpression 四舍五入为 length 所指定的小数位数。当 length 为负数时,numeric_e-xpression 则按 length 所指定的在小数点的左边四舍五入。

function

是要执行的操作类型。function 必须是 tinyint、smallint 或 int。如果省略 function 或 function 的值为 0(默认),numeric_e-xpression 将四舍五入。当指定 0 以外的值时,将截断 numeric_e-xpression。

返回类型

返回与 numeric_e-xpression 相同的类型。

注释

ROUND 始终返回一个值。如果 length 是负数且大于小数点前的数字个数,ROUND 将返回 0。

示例 结果

ROUND(748.58, -4) 0

当 length 是负数时,无论什么数据类型,ROUND 都将返回一个四舍五入的 numeric_e-xpression。

示例 结果

ROUND(748.58, -1) 750.00

ROUND(748.58, -2) 700.00

ROUND(748.58, -3) 1000.00

示例

A. 使用 ROUND 和估计值

下例显示两个表达式,说明使用 ROUND 函数且最后一个数字始终是估计值。

Select ROUND(123.9994, 3), ROUND(123.9995, 3)

GO

下面是结果集:

123.9990 124.0000

B. 使用 ROUND 和四舍五入的近似值

下例显示四舍五入和近似值。

语句 结果

Select ROUND(123.4545, 2)

123.4500

Select ROUND(123.45, -2)

100.00

C. 使用 ROUND 截断

下例使用两个 Select 语句说明四舍五入和截断之间的区别。第一个语句四舍五入结果。第二个语句截断结果。

语句 结果

Select ROUND(150.75, 0)

151.00

Select ROUND(150.75, 0, 1)

150.00

----------------------------------------------------------------------------日期之差---------------------------

case when DateDiff(dd,借书日期,getdate())>30 then DateDiff(dd,借书日期,getdate())[单价]1.012 else 0 end

my sql四舍五入_SQL查询四舍五入 解决方法相关推荐

  1. my sql四舍五入_SQL查询四舍五入的示例及两种方法

    方法1: SELECT CAST('123.456' as decimal) 将会得到 123(小数点后面的将会被省略掉). 如果希望得到小数点后面的两位. 则需要把上面的改为 SELECT CAST ...

  2. oracle sql语句中包含‘’ 的解决方法

    oracle sql语句中包含'&' 的解决方法 参考文章: (1)oracle sql语句中包含'&' 的解决方法 (2)https://www.cnblogs.com/hm1990 ...

  3. 程序启动报错:ORA-12505;PL/SQL却可以登录的解决方法

    程序启动报错:ORA-12505;PL/SQL却可以登录的解决方法 参考文章: (1)程序启动报错:ORA-12505;PL/SQL却可以登录的解决方法 (2)https://www.cnblogs. ...

  4. SQL数据库常见故障及解决方法

    SQL数据库常见故障及解决方法 参考文章: (1)SQL数据库常见故障及解决方法 (2)https://www.cnblogs.com/chenduzizhong/p/8990334.html 备忘一 ...

  5. php sql查询两个表语句,sql多表查询语句与方法

    sql多表查询有很多种方法,如有自然连接 INNER JOIN,外边查询LEFT JOIN,交叉查询JOIN,交叉连接JOIN等join on left on 等多的是哦. sql多表查询语句与方法 ...

  6. 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误。未找到或无法访问服务器(及Windows 10无法找到SQL server配置管理器的解决方法)

    这里写目录标题 在与 SQL Server 建立连接时出现与网络相关的或特定于实例的错误.未找到或无法访问服务器 Windows 10无法找到SQL server配置管理器的解决方法 后续 在与 SQ ...

  7. SQL安装文件挂起解决方法

    SQL安装文件挂起解决方法 2007-12-02 15:36在首次或者是卸载SQLSEV2000以后,再次安装SQL Server 2000的时候会出现文件挂起的提示,那么应该如 何去解决,现有以下步 ...

  8. 关于Hive中case when不准使用子查询的解决方法

    关于Hive中case when不准使用子查询的解决方法 参考文章: (1)关于Hive中case when不准使用子查询的解决方法 (2)https://www.cnblogs.com/harryl ...

  9. .sql导入中文显示乱码解决方法

    .sql导入中文显示乱码解决方法 参考文章: (1).sql导入中文显示乱码解决方法 (2)https://www.cnblogs.com/fnote/p/8051682.html 备忘一下.

最新文章

  1. 认识mysql总结_从根上理解Mysql - 读后个人总结1-搜云库
  2. WinPcap笔记(2):获取设备列表
  3. 【Android Developers Training】 58. 缓存位图
  4. c++ 字符串连接_C语言字符串操作总结大全(超详细)
  5. Python 也能干大事 —— 解方程
  6. Win7提示1970-01-01 000000 is not a valid data怎么办.
  7. ftp文件上传后大小改变问题解决
  8. java this和super_Java中超详细this与super的概念和用法_Java_软件编程
  9. 车牌识别平台开源(支持蓝牌、绿牌,准确率高达96%)
  10. usb线连接android设备连接不上,安卓手机USB数据线连接不上电脑怎么办
  11. pycharm如何更换背景图片
  12. python-txt转换为pdf
  13. SECURITY 03: 邮件服务TLS/SSL 、 总结和答疑 、 CA数字证书服务
  14. 波士顿动力机器狗签约世界第一马戏团!
  15. 影评 之 《血战钢锯岭》
  16. 区块链大戏上演!陈伟星VS朱啸虎公开互怼数个回合 | 区块链日报
  17. 【GMS认证】关于GSI和VTS解锁刷镜像命令总结
  18. 「计算机日常」笔吧测评室笔记本测评科普视频笔记
  19. scratch双语教师课件文档手册 1.初识scratch
  20. Jetpack Compose 从入门到入门(六)

热门文章

  1. Python单线程、多线程、多进程运行效率评测对比
  2. 在sandbox中无法输入中文
  3. if函数的语法c语言并列,if函数多个条件并列
  4. 免费pdf转换器推荐,现在收藏还不晚!
  5. ATMEGA16定时器0
  6. Shift_JIS、CP932、MS932、Windows-31J区别
  7. 《Java程序设计》第15周课堂实践总结
  8. kinect-kinect v1硬件介绍
  9. 2020年电力电缆新版试题及电力电缆模拟试题
  10. 东北师范大学计算机调剂复试经验谈,研友分享:东北师范大学2011年调剂经验谈...