【发布时间】:2015-10-23 09:38:27
【问题描述】:
我需要按用户名和帐户名称对总操作 ID(呼叫、会议和任务)组进行计数
我试试这个,但总数不正确
SELECT count(calls.id) + count(meetings.id) + count(tasks.id) AS 'total', users.user_name AS 'name', GROUP_CONCAT(accounts.name) AS 'accounts'
FROM accounts, calls, users, meetings, tasks
WHERE accounts.id = calls.parent_id
AND calls.assigned_user_id = users.id
AND accounts.id = meetings.parent_id
AND meetings.assigned_user_id = users.id
AND accounts.id = tasks.parent_id
AND tasks.assigned_user_id = users.id
GROUP BY name
【问题讨论】:
-
您能给我们展示一些示例数据和预期输出吗?
-
按名称、accounts.name 分组?
-
总数怎么不正确?您能否向我们展示示例数据,以及您得到了什么结果?
-
数据库是 Sugar CRM CE
-
是不是因为 count(calls.id) 正在计算调用表中的所有 id,因为您没有限制表搜索。如果要限制搜索,请改用表连接。