sql為數字添加千分位(也就是錢的格式)


感覺這個東西在項目中用得挺多的,之前在前台頁面是用正則來處理,現在由於是數據查詢,所以直接在查出數據的時候將其轉為指定的千分位格式,省的前台再處理,不講原理,因為我也看不懂,不過會用就行了,在網上找了下,現在自己記錄下,方便自己查看。

Sql獲取數字的千分位,就是將一個數字以三位,用逗號隔開,sql代碼如下:  

  (1)不帶小數點:

select reverse(stuff(reverse(convert(varchar,convert(money,1234333000),1)),1,3,''))

    這個是不帶小數點的數字,如果強加了小數點,select的結果是沒有小數點的,這個的結果是:1,234,333,000 

  (2)帶小數點:

select convert(varchar,cast(121565610000.012 AS MONEY),1)

    這個是帶小數點的數字,只保存小數點后兩位,如果數字本身沒有小數位,會默認補上兩個0,原因在與convert的最后一個參數(這里的值是1)。

    當值是1的時候將會小數兩位,如:123,000.00;當值是2的時候會小數4位,如:123,000.0000;當為0的時候會將數字直接輸出(也就是沒有逗號分隔,但是會有兩位小數,即使原數據沒有小數位),如:1230000.00。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM