简体   繁体   English

MySql 格式数字,以空格为千位分隔符且无十进制零

[英]MySql format number with space as thousand delimiter and no decimal zeros

Having the number: 103,648.340 format it to be as the expected result拥有数字: 103,648.340将其格式化为预期结果

Expect result: 103 648.34预期结果:103 648.34

My progress:我的进步:

SELECT
    TRIM(price)+0 as price_without_decimal_zeros,
    FORMAT(price, 1, 'bg_BG') as thousand_delimited_by_space
from products
  1. TRIM remove decimal zeros, so I've 103,648.34 TRIM删除十进制零,所以我有103,648.34
  2. FORMAT add thousand delimited by space, so I've 103 648.340 FORMAT加千以空格分隔,所以我有103 648.340

I've tried to combine TRIM with FORMAT without success我试图将TRIMFORMAT结合起来,但没有成功

Try this solution:试试这个解决方案:

SELECT TRIM(TRAILING '.' FROM TRIM(TRAILING '0' from REPLACE(format(price, 3), ",", " ") )) AS price
FROM products
WHERE price LIKE '%.%'

DEMO 演示

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM