在一个语句中使用concat,coalesce,sum和format

时间:2017-07-16 06:54:22

标签: mysql

我正在尝试向我的查询添加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)) and (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)))也会出错

有人可以帮我解释这个陈述吗?

1 个答案:

答案 0 :(得分:1)

format(X,D)将一个数字作为第一个参数,小数位作为第二个参数,因此它应该放在结果为数字的位置,并提供一些小数位:

 CONCAT('€ ', FORMAT(COALESCE(SUM(r), 0) - COALESCE(SUM(l), 0),0))