繁体   English   中英

如何从日期时间获得平均分钟数?

[英]How to get the average number of minutes from datetime?

我想要做的是显示技术人员对每张票据的平均分钟数,但只显示平均值大于或等于每张票的总平均分钟数。 但你不能在日期时间使用avg。

我知道这是非常错误的,但这是我开始的:

select user_firstname + ' ' + user_lastname as technician_name, 
avg(ticket_requestdate - ticket_closeddate) as average_minutes_per_ticket
from hd_users
    join hd_tickets on ticket_requestor_id=user_id
where user_is_technician = '1' 
having avg(ticket_requestdate - ticket_closeddate) >=
        (select avg(ticket_requestdate - ticket_closeddate) from hd_users)

我会在子查询中使用datediff()和分钟

datediff(minute,datestart,dateend)

然后你得到分钟数作为int然后你可以做avg()

要么

avg(datediff(minute,datestart,dateend))

----编辑----我猜有点因为我不知道你的表结构,但是这个怎么样

select user_firstname + ' ' + user_lastname as technician_name, 
avg(Datediff(minute,ticket_requestdate,ticket_closeddate)) as average_minutes_per_ticket
from hd_users
join hd_tickets on ticket_requestor_id=user_id
where user_is_technician = '1' 
GROUP BY user_firstname, user_lastname 
having avg(Datediff(minute,ticket_requestdate,ticket_closeddate)) >=
    (select avg(Datediff(minute,ticket_requestdate,ticket_closeddate)) from hd_users)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM