按不属于咨询表的字段分组

时间:2017-07-06 21:12:07

标签: mysql sql

我正在尝试创建一个查询,允许我按照不属于所咨询的表的字段对结果进行分组。

拥有以下关联

ER

在这种情况下,故障单表中有一个名为status的字段,我需要对该字段执行求和,并按协调名称对结果进行分组。 仅对有票证的用户进行协调

我正在尝试以下查询:

SELECT 
    c.name,
    SUM(CASE
        WHEN t.status = 'open' THEN 1
        ELSE 0
    END) 'open',
    SUM(CASE
        WHEN t.status = 'pending' THEN 1
        ELSE 0
    END) 'in progress',
    SUM(CASE
        WHEN t.status = 'closed' THEN 1
        ELSE 0
    END) 'closed'
FROM
    tickets t,
    users u,
    user_coordinations uc,
    coordinations c
GROUP BY 1

这是我得到的结果

result

这个结果看起来像我的预期,但没有考虑到只接受有票的用户协调的条件

请检查此SQL小提琴:http://sqlfiddle.com/#!9/9ed08/1

感谢您的时间

我想指出答案已经找到,使用显式连接解决了问题,因为我在评论中建议,sql fiddle中的示例显示正确的查询。谢谢你的帮助。

0 个答案:

没有答案