我想在使用汇总时合并名字和姓氏列,但它似乎将相同的姓氏复制到每个名字:
SELECT IFNULL(CONCAT(u.firstname, ' ', u.lastname),'Total Projects') AS Name, count(DISTINCT(p.id) ) AS Total
FROM projects p
INNER JOIN users u ON p.creator_fk = u.id
GROUP BY Name WITH ROLLUP;
所以我最终得到了类似的东西:
Name | Total
John Smith | 10
Sarah Smith | 25
Tracy Smith | 5
Total Projects | 40
答案 0 :(得分:1)
根据我的理解
SELECT IFNULL(name,'Total Projects') AS Name, count(DISTINCT(id)) AS Total
from (select CONCAT(u.firstname,' ', u.lastname) as name,p.id
FROM projects p INNER JOIN users u ON p.creator_fk = u.id) as p GROUP BY name WITH ROLLUP;