哆啦CMeng 2018-07-08 05:25 采纳率: 0%
浏览 4025
已结题

SQLserver 小数保留两位有效数字

我sql中Cast(round(((MBBB.{0}-YBB.{0})/YBB.{0})*100,2) as nvarchar(20))+'%'
最后得到的是 0.00000000000%,没有得到0.00%格式,请大神指教

  • 写回答

7条回答 默认 最新

  • jiepangK 2018-07-08 12:10
    关注
        这个是你的语句:SELECT Cast(round((0.99999999)*100,2) as nvarchar(20))+'%'
    
        首先把数字定义为保留两位小数:SELECT CAST( 0.99999999*100 AS DECIMAL(18,2))
    
        再把数字转换为文本 加上百分号:SELECT cast (CAST( 0.99999999*100 AS DECIMAL(18,2))  AS NVARCHAR(20)) +'%'
    
    评论

报告相同问题?