MySql查询问题:结合多个选择查询问题
作为sql中的新手我有以下问题。 我不得不费力将4个查询合并为一个用于报告软件。代码正在工作,但结果不是我想要的。
试图使用UNION语句,它显示计数但全部按1'count(*)'字段排序。
我想有4场为表示为每个查询(总报警,总承认,共15分钟内确认,15分钟后,总确认)
这是到目前为止我的代码:
select
count(*) 'Total alarms'
FROM alarminfo
where
((alarminfo.set_time>='2017-09-01 00:00:00.0' AND alarminfo.set_time<'2017-09-15 23:59:59.0'))
union
select
count(ack_time) 'Total Acknowledged'
FROM alarminfo
where
((alarminfo.set_time>='2017-09-01 00:00:00.0' AND alarminfo.set_time<'2017-09-15 23:59:59.0')
)
union
select
count(*) 'Total acknowledged within 15min'
FROM alarminfo
where
((alarminfo.set_time>='2017-09-01 00:00:00.0' AND alarminfo.set_time<'2017-09-15 23:59:59.0') AND
(TIMESTAMPDIFF(SECOND,alarminfo.set_time ,alarminfo.ack_time)<60*15))
union
select
count(*) 'Total acknowledged after 15min'
FROM alarminfo
where
((alarminfo.set_time>='2017-09-01 00:00:00.0' AND alarminfo.set_time<'2017-09-15 23:59:59.0') AND
(TIMESTAMPDIFF(SECOND,alarminfo.set_time ,alarminfo.ack_time)>60*15))
任何人都知道如何在单独的字段下对每个计数进行排序?
如果你想在一个记录的结果,使用@ P.Salmon的回答,如果你希望他们在多条记录,你可以用我的。 – Lamar