作者:王海永于 2018年01月24日 发布在分类 / 开发技术 / DB 下,并于 2018年01月24日 编辑
    sqlserver数据库中如果对数值型的字段进行小数点保留两位,如果是小于1的数,前面的0消失解决方案

       725

       0


    sqlserver数据库中数值型保留两位小数的方式:


    1. 使用 Round() 函数,如 Round(@num,2)  参数 2 表示 保留两位有效数字。

    2. 更好的方法是使用 Convert(decimal(18,2),@num) 实现转换,decimal(18,2) 指定要保留的有效数字。

    这两个方法有一点不同:使用 Round() 函数,如果 @num 是常数,如 Round(2.3344,2) 则 会在把有效数字后面的 变为0 ,成 2.3300。但 Convert() 函数就不会。

    如果结果是小于1的数,前面的0不显示,例如结果为0.25,查询出来变成了.25前面的0不显示

    如何解决这一问题呢

    可以对结果再次进行转换,转换为字符串即可,例如:

    convert(varchar,convert(decimal(18,2),要转换的字段或值))

    访问权限

    创建人 王海永
    文档编辑权限 创建者私有
    文档阅读权限 来自分类
    分类阅读权限 所有人
    分类编辑权限 所有人
    分类审核权限
    标签

    sqlserver 小于1的数 前面的0消失
    历史版本

    修改日期 修改人 备注
    2018-01-24 20:13:25[当前版本] 王海永 CREAT
    同类知识
    相关知识

    睿恒知识库-V3.2.0