当我使用ROUND(X, D)
进行SQL查询时,其中D是列名而不是直接整数值,结果舍得很好,但是有太多十进制数字。
例如,
SELECT b.digits, ROUND(a.amount, b.digits) as amount
FROM a
JOIN b
ON a.number_id = b.id
结果是这样的:
3 357.143000000000000000000000
2 89.290000000000000000000000
4 696.436600000000000000000000
2 214.290000000000000000000000
2 328.570000000000000000000000
2 437.500000000000000000000000
b.digits列包含值必须舍入的数字。可以根据数字得到结果,如下所示:
3 357.143
2 89.29
4 696.4366
2 214.29
2 328.57
2 437.50
答案 0 :(得分:0)
尝试使用format
函数:
SELECT b.digits, FORMAT(a.amount, b.digits) as amount
FROM a
JOIN b
ON a.number_id = b.id