mysql - 在一条语句中使用 concat、coalesce、sum 和 format

标签 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)) 和 (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/

相关文章:

php - SQLSTATE[HY093] : Invalid parameter number: parameter was not defined

mysql - 如何在 Workbench 中为 MySQL 表指定 DateTime()

mysql - (Mysql : group rows by a given field and force the newest data to be used in the grouped row

php - UTF-8贯穿始终

mysql - Django unittest - 无法创建表

php - file_get_html - 内部服务器错误

具有重复值约束的 MySQL 外键失败

php - Yii框架: Help to translate relational Sql query

php - 从 Codeigniter 导出 CSV 文件

MySQL 行大小太大