1
我想从我的MySQL表中获取一些统计信息,并希望将它保留为单个查询。只是不知道如何(或者甚至可能)。我有两个疑问:将同一表中的查询合并为一个查询
SELECT COUNT(*) AS `accept`
FROM `status`
WHERE `groupID` IN (98779,98780)
AND `group` = 'order'
AND `status` = 'accept'
和
SELECT COUNT(*) AS `price`
FROM `status`
WHERE `groupID` IN (98779, 98780)
AND `group` = 'quotation'
AND (`status` = 'final' OR `status` = 'manualprice')
我最好的建议是,他们在一个单一的SELECT
这样的组合:
SELECT
(SELECT COUNT(*) AS `accept`
FROM `status`
WHERE `groupID` IN (98779, 98780) AND `group` = 'order' AND `status` = 'accept') AS accept,
(SELECT COUNT(*) AS `price`
FROM `status`
WHERE `groupID` IN (98779, 98780) AND `group` = 'quotation' AND (`status` = 'final' OR `status` = 'manualprice')) AS price
有没有更好的办法?
这是非常聪明的......这么好有更多的学习。我能够将我的查询优化10倍。非常感谢! –