根据每个组的最小值获取一个值列表的平均值,而不考虑零

时间:2019-09-06 19:30:16

标签: sql sql-server

我想获得为每张票证列出的最少天数+将它们加起来并按我拥有的不同票证数进行划分(不考虑零值)。有人可以帮我吗?

我的数据如下:

enter image description here

这是我的公式:

=Sum(min([Build Complete Days] In([Ticket ID])))/[Ticket_Count]

2 个答案:

答案 0 :(得分:0)

这听起来像两个聚合级别:

select avg(min_cd * 1.0) as avg_min_days_per_ticket
from (select ticket_id, min(complete_days) as min_cd
      from t
      where complete_days > 0
      group by ticket_id
    ) t;

答案 1 :(得分:0)

completeddays为每个ticketid选择最小值NOT EXISTS并得到平均值:

select avg(t.completeddays) averagedays
from tablename t
where t.completeddays > 0 and not exists (
  select 1 from tablename
  where ticketid = t.ticketid and completeddays > 0 and completeddays < t.completeddays
)