我有3-5个mysql查询:
SELECT COUNT(*) FROM aso_repairs WHERE repairs_date_end = '0000-00-00 00:00:00' AND repairs_supply_repair_users_id = ''
SELECT COUNT(*) FROM aso_repairs WHERE repairs_date_end != '0000-00-00 00:00:00' AND repairs_supply_repair_users_id != '0'
SELECT repairs_id FROM aso_repairs ORDER BY repairs_id DESC
如何在一个查询中完成此操作?
像:
(FIRST COUNT) AS count1, (SECOND COUNT) AS count2, (LAST QUERY) AS count3
答案 0 :(得分:0)
使用union并使用3列进行每个选择:
select sum(count1),sum(count2),sum(count3)
from
(
SELECT COUNT(*) as 'count1',0 as 'count2' ,0 as 'count3' FROM aso_repairs WHERE repairs_date_end = '0000-00-00 00:00:00' AND repairs_supply_repair_users_id = ''
union
SELECT 0 as 'count1',COUNT(*) as 'count2',0 as 'count3' FROM aso_repairs WHERE repairs_date_end != '0000-00-00 00:00:00' AND repairs_supply_repair_users_id != '0'
union
SELECT 0 as 'count1' ,0 as 'count2',repairs_id as 'count3' FROM aso_repairs ORDER BY repairs_id DESC
)RS_count