簡體   English   中英

從十進制中刪除一些尾隨零

[英]Remove some of trailing zeros from decimal

我有列decimal(10,5)VALUE和列intPICTURE

所以,我需要將VALUE舍入到小數點后的PICTURE數字。

例如:

  • 如果VALUE = 10.50000PICTURE = 2 ,我想得到10.50
  • 如果VALUE = 0.15371PICTURE = 3 ,我想得到0.154

如果我只使用Round()Cast(Round(...) as nvarchar) ,那么我有尾隨零。 如果我Cast()float ,那么我會丟失零。

有什么解決辦法嗎?

您可以將str()函數與trim()

select trim(str(value, 20, picture))

str()將數字轉換為具有指定長度和精度的字符串。 可悲的是,它產生了一個固定長度的字符串,左邊用空格填充。 trim()刪除空格。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM