Mysql SQL未将秒数拆分为秒数时间和
我正在尝试按活动id拆分每个查询的总和 例如,如果Mysql SQL未将秒数拆分为秒数时间和,mysql,sql,subquery,Mysql,Sql,Subquery,我正在尝试按活动id拆分每个查询的总和 例如,如果agent1进入campaign\u id:505并进入Admin 1小时。和Agent1也不要进入campaign\u id:2小时 这需要拆分,但显示的是活动id:3小时 代码 set @fromDate = '2018-06-29 00:00:01'; set @ToDate = '2018-06-29 23:59:59'; SELECT full_name, log.user, log.campa
agent1
进入campaign\u id
:505并进入Admin 1小时。和Agent1
也不要进入campaign\u id
:2小时
这需要拆分,但显示的是活动id
:3小时
代码
set @fromDate = '2018-06-29 00:00:01';
set @ToDate = '2018-06-29 23:59:59';
SELECT full_name,
log.user,
log.campaign_id,
count(log.Status) as calls (sec_to_time(sum(pause_sec)+sum(wait_sec)+sum(talk_sec)+sum(dispo_sec)+sum(dead_sec))) as AgentTime,
(sec_to_time(sum(log.wait_sec))) as Wait,
(sec_to_time(sum(log.talk_sec))) as Talk,
(sec_to_time(sum(log.dispo_sec))) as Dispo,
(sec_to_time(sum(log.dead_sec))) as Dead,
(sec_to_time(sum(log.pause_sec))) as Pause,
Adminlog.Admin,
BreakLog.Break,
BUZZLog.BUZZ,
ITLog.IT,
LaggedLog.Lagged,
FROM Table1 as log
left join table2 as users
on log.user = users.user
left join (SELECT
user,
campaign_id,
(sec_to_time(sum(pause_sec))) as Admin
from Table1
where (sub_status='Admin')
and (event_time > @fromDate and event_time < @toDate)
group by user) as Adminlog
on log.user = Adminlog.user
left join (SELECT
user,
campaign_id,
(sec_to_time(sum(pause_sec))) as Break
from Table1
where (sub_status='Break')
and (event_time > @fromDate and event_time < @toDate)
group by user) as BreakLog
on log.user = BreakLog.user
left join (SELECT
user,
campaign_id,
(sec_to_time(sum(pause_sec))) as BUZZ
from Table1
where (sub_status='BUZZ')
and (event_time > @fromDate and event_time < @toDate)
group by user) as BUZZLog
on log.user = BUZZLog.user
left join (SELECT
user,
campaign_id,
(sec_to_time(sum(pause_sec))) as IT
from Table1
where (sub_status='IT')
and (event_time > @fromDate and event_time < @toDate)
group by user) as ITLog
on log.user = ITLog.user
left join (SELECT
user,
campaign_id,
(sec_to_time(sum(pause_sec))) as Lagged
from Table1
where (sub_status='Lagged')
and (event_time > @fromDate and event_time < @toDate)
group by user) as LaggedLog
on log.user = LaggedLog.user
where (log.event_time > @fromDate and event_time < @toDate)
group by campaign_id, user
在本例中,我需要“Admin”来显示该活动的管理时间。什么类型的SQL?嗨,Shawn,MYSQL。谢谢我觉得我们的“例如”中缺少了一些词,但检查查询我的第一反应是,如果您希望在结果中有任何与capaign\U id有意义的关联,您可能应该按照
user
和campaign\u id
对子查询进行分组。谢谢您的评论。我不知道为什么我的例子会变成这样。。我在子查询中尝试了用户Camapign_id,但仍然得到了相同的结果:(
Full_name User Campaign_id Calls AgentTime ..... Admin
Agent1 101 505 2 01:01:23 01:54:57
Agent1 101 506 4 05:12:20 01:54:57
Agent1 101 507 22 00:21:36 01:54:57