Mysql根据多列选择唯一记录,只显示组和合计金额

Mysql根据多列选择唯一记录,只显示组和合计金额,mysql,Mysql,您好,我正在尝试查询一个表,该表包含代码、金额和状态的多个重复项,如果我只有一个根据客户组名称获取结果组并获取该组下的金额总和,我将如何执行此操作 SELECT `client`.`client_group` , FORMAT(SUM(`Data_result`.`Data_result_amount` ),2) as sum FROM `qwer`.`Data_result` INNER JOIN `qwer`.`Data` ON (`Data_result`.`Da

您好,我正在尝试查询一个表,该表包含代码、金额和状态的多个重复项,如果我只有一个根据客户组名称获取结果组并获取该组下的金额总和,我将如何执行此操作

SELECT `client`.`client_group` 
,  FORMAT(SUM(`Data_result`.`Data_result_amount` ),2) as sum
FROM
  `qwer`.`Data_result`
  INNER JOIN `qwer`.`Data` 
      ON (`Data_result`.`Data_result_lead` = `Data`.`Data_id`)
  INNER JOIN `qwer`.`Data_status` 
      ON (`Data_result`.`Data_result_status_id` = `Data_status`.`Data_status_id`)
  INNER JOIN `qwer`.`client` 
      ON (`Data`.`Data_client_id` = `client`.`client_id`)
WHERE `Data_status`.`Data_status_name` IN ('PAID') AND  MONTH(`Data_result`.`result_ts`) = MONTH(CURRENT_DATE())
AND YEAR(`Data_result`.`result_ts`) = YEAR(CURRENT_DATE())
GROUP BY `client`.`client_group`
上述查询结果:

桌子


在运行“总和”之前,请尝试区分,检查这是否解决了您的问题

    SELECT `client_group` ,  FORMAT(SUM(`Data_result_amount` ),2) as sum from (
    SELECT DISTINCT `client`.`client_group` , `Data_result`.`Data_result_amount` 
    FROM
      `qwer`.`Data_result`
      INNER JOIN `qwer`.`Data` 
          ON (`Data_result`.`Data_result_lead` = `Data`.`Data_id`)
      INNER JOIN `qwer`.`Data_status` 
          ON (`Data_result`.`Data_result_status_id` = `Data_status`.`Data_status_id`)
      INNER JOIN `qwer`.`client` 
          ON (`Data`.`Data_client_id` = `client`.`client_id`)
    WHERE `Data_status`.`Data_status_name` IN ('PAID') AND  MONTH(`Data_result`.`result_ts`) = MONTH(CURRENT_DATE())
    AND YEAR(`Data_result`.`result_ts`) = YEAR(CURRENT_DATE())
    ) T
    GROUP BY `client_group`

您可以在此处检查查询

请添加表架构和一些示例数据以及预期结果。这对解决这个问题非常有帮助。好的,我将包括它等等。您希望得到什么输出?我希望组中所有金额的输出总和不包括基于代码、金额和状态的重复数据所以ad的总和应该是9000?出现错误查询:选择client.client\u group,FORMATSUMData\u result.data\u result\u amount,2作为总和,选择不同的客户端。c。。。错误代码:1064您的SQL语法有错误;检查与您的MySQL服务器版本对应的手册,了解使用“sum SELECT DISTINCT client.client_group”和“Data_result.”的正确语法。第2行的“Data_result_amo”执行时间:00:00:00:000传输时间:00:00:00:000总时间:00:00:00:000括号中有错误,我编辑了查询,请再次检查。我没有运行查询,因此可能会出现一些小错误。仍然会出现一个错误。此语法在任何mysql版本上都有效吗?@kkk from关键字缺失。请检查查询,谢谢