Mysql 查询-从已创建的票证数量中查找已关闭票证的数量
我有一个查询,用于查找代理在每个队列(部门)中创建的票证数量 我想得到的是从创建的票证中关闭了多少票证。以下是上述查询结果的结构:Mysql 查询-从已创建的票证数量中查找已关闭票证的数量,mysql,sql,subquery,Mysql,Sql,Subquery,我有一个查询,用于查找代理在每个队列(部门)中创建的票证数量 我想得到的是从创建的票证中关闭了多少票证。以下是上述查询结果的结构: Queue || # of tickets Billing 12 Enterprise Support 7 Fiber Support 47 L2-Support 4 Retail Support 107 Sales
Queue || # of tickets
Billing 12
Enterprise Support 7
Fiber Support 47
L2-Support 4
Retail Support 107
Sales 4
我不太擅长子查询。这就是为什么我在这个问题上苦苦挣扎。
以下查询显示处于关闭状态的票证数
SELECT queue.name AS 'Queue', COUNT(ticket.id) AS '# of closed tickets'
FROM ticket
INNER JOIN
queue ON ticket.queue_id = queue.id
WHERE
ticket.create_by != 1
AND
ticket.ticket_state_id = '2'
AND
DATE(ticket.create_time) >= DATE_SUB(CURDATE(),INTERVAL 1 day)
AND
ticket.queue_id IN ( SELECT id FROM queue WHERE valid_id=1 ORDER BY name)
GROUP BY queue.name;
最后,我想显示队列创建的票证数量以及处于关闭状态的票证数量,如下所示:
Queue || # of tickets || # of closed tickets
Billing 12 2
Enterprise Support 7 0
Fiber Support 47 22
L2-Support 4 1
Retail Support 107 60
Sales 4 1
当您需要聚合集合及其子集时,请使用
CASE
SELECT queue.name AS 'Queue', COUNT(ticket.id) AS '# of tickets'
, SUM(CASE WHEN ticket.ticket_state_id = '2' THEN 1 ELSE 0 END) AS '# of closed tickets'
FROM ticket
INNER JOIN
queue ON ticket.queue_id = queue.id
WHERE
ticket.create_by != 1
AND
DATE(ticket.create_time) >= DATE_SUB(CURDATE(),INTERVAL 1 day)
AND
ticket.queue_id IN ( SELECT id FROM queue WHERE valid_id=1 ORDER BY name)
GROUP BY queue.name;
当您需要聚合集合及其子集时,请使用
CASE
SELECT queue.name AS 'Queue', COUNT(ticket.id) AS '# of tickets'
, SUM(CASE WHEN ticket.ticket_state_id = '2' THEN 1 ELSE 0 END) AS '# of closed tickets'
FROM ticket
INNER JOIN
queue ON ticket.queue_id = queue.id
WHERE
ticket.create_by != 1
AND
DATE(ticket.create_time) >= DATE_SUB(CURDATE(),INTERVAL 1 day)
AND
ticket.queue_id IN ( SELECT id FROM queue WHERE valid_id=1 ORDER BY name)
GROUP BY queue.name;
考虑提供适当的创建和插入语句和期望的result@Strawberry不清楚吗???很清楚,任何人都能理解这个问题。考虑提供适当的创建和插入语句和所需的语句。result@Strawberry不清楚吗???很清楚,任何人都可以理解这个问题。注意ORDER BY子句是多余的。注意ORDER BY子句是多余的。