id 公司 数量 值
1 A 2 3
2 A 3 4
3 B 4 6
4 B 3 5
5 B 6 8
6 C 8 5
7 C 9 2
8 C 5 4想要查询 每个公司数量最小的值的平均数 上面那个查询结果应该是 avg(3,5,4)
1 A 2 3
2 A 3 4
3 B 4 6
4 B 3 5
5 B 6 8
6 C 8 5
7 C 9 2
8 C 5 4想要查询 每个公司数量最小的值的平均数 上面那个查询结果应该是 avg(3,5,4)
declare @1 table([id] int,[公司] nvarchar(1),[数量] int,[值] int)
Insert @1
select 1,N'A',2,3 union all
select 2,N'A',3,4 union all
select 3,N'B',4,6 union all
select 4,N'B',3,5 union all
select 5,N'B',6,8 union all
select 6,N'C',8,5 union all
select 7,N'C',9,2 union all
select 8,N'C',5,4Select [avg]=avg([值]) from @1 a
Where id=(Select Top 1 id From @1 Where [公司]=a.[公司] Order By [数量])
/*
avg
-----------
4
*/