在我的表格中,我有一些像这样的colms,(在另一个cols旁边)
col1 | col2
s1 | 5
s1 | 5
s2 | 3
s2 | 3
s2 | 3
s3 | 5
s3 | 5
s4 | 7
我希望 ALL col2的平均值超过不同的col1。 (5 + 3 + 5 + 7)/ 4 = 5
答案 0 :(得分:2)
您将需要一个子查询。这是一种方式:
select avg(col2)
from (select distinct col1, col2
from my_table
) t
答案 1 :(得分:1)
试试这个:
SELECT AVG(T.col2)
FROM
(SELECT DISTINCT col1, col2
FROM yourtable) as T
答案 2 :(得分:0)
平均值是一组值之和除以这些值的数量。在这里,您想要除以不同值的计数,所以:
SELECT SUM(col2)/COUNT (DISTINCT col1)
FROM my_table
答案 3 :(得分:-1)
你可以说
SELECT col1, AVG( col2 ) FROM my_table GROUP BY col1
答案 4 :(得分:-1)
尝试
SELECT AVG(coll2) as Average From myTable Group by Col1,Col2