• Sql中的小数点和保留位数


    直接上代码

    首先明确:

    1.round() 函数是四舍五入用,第一个参数是我们要被操作的数据,第二个参数是设置我们四舍五入之后小数点后显示几位2.numeric 函数的2个参数,第一个表示数据长度,第二个参数表示小数点后位数。
    3.CAST()函数和CONVERT()函数都不能执行四舍五入或截断操作。

    虽然说CAST不支持四舍五入,但是有的还是执行了四舍五入了:

    select cast('12.239' as decimal(5,2))--12.24

    反正,遇到四舍五入还是用Round吧

    例子

    --decimal(32,3) 这里的'3'是你要保留的位数
    select cast('12.362222' as  decimal(32,3))--》12.362 
    
    --round('数字','四舍五入后保留小数点后几位')
    select round(122.5255,2)--122.5300
    
    --然后用cast('数字' as  目标类型(一共多长,小数点后保留多少位) )
    --numeric基本等同于Decimal
    select   cast(round(122.5255,2)   as   numeric(5,2))--这个就是将122.5300这个,保留全部是5,小数点后是2  122.53
    select cast('12.3898989' as decimal(32,20))--》12.38989890000000000000
    SELECT CAST('12.56' AS decimal(10,8))--==>12.56000000
    
    --比如下面这个 12.56,decimal全长是要保持10,小数点后要保留8个
    --这里最多是8, 因为12已经占去2位,小数点最多是8个
    SELECT CAST('12.56' AS decimal(10,8))--12.56000000
    SELECT CAST('12' AS int)-->12
    SELECT CAST('12.0' AS int)-->报错,double类型的字符串不能转成int
    SELECT   (Round(cast('12.36' as  decimal(32,2)) * cast('1.23' as  decimal(32,2)),2))--》15.2000
    " * "代表 +-*/
  • 相关阅读:
    航空公司客户价值分析
    电力窃漏电用户自动识别
    信息论基础
    Xgboost
    直线或曲线拟合
    matplotlib中绘图
    pandas中绘图
    matplotlib图形设置
    子图subplot
    时间序列:时间序列理论、时间序列建模
  • 原文地址:https://www.cnblogs.com/ZkbFighting/p/13453942.html
Copyright © 2020-2023  润新知