我尝试向我的查询添加 FORMAT
,但是当我运行查询时出现错误。
这是我的查询:
SELECT CONCAT('€ ', COALESCE(SUM(r), 0) - COALESCE(SUM(l), 0)) as totaal
FROM trans
WHERE user_id = 1
AND k_id= 110
GROUP
BY user_id
LIMIT 0,1
我尝试了多个语句:
(FORMAT(r)) 和 (FORMAT(l))
给出错误
FORMAT(SUM(r), 0) - FORMAT(SUM(l), 0)
给出错误响应
CONCAT(FORMAT('€ ', COALESCE(SUM(r), 0) - COALESCE(SUM(l), 0)))
给出错误
FORMAT(CONCAT('€ ', COALESCE(SUM(r), 0) - COALESCE(SUM(l), 0)))
也给出错误
有人可以帮我解释一下这个陈述吗?
最佳答案
format(X,D)
将数字作为第一个参数,将小数位数作为第二个参数,因此应将其放在结果为数字的位置并提供小数位数:
CONCAT('€ ', FORMAT(COALESCE(SUM(r), 0) - COALESCE(SUM(l), 0),0))
关于mysql - 在一条语句中使用 concat、coalesce、sum 和 format,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45125906/