我有一个Sql Server Table ..它是这样的:
Id ...... Column1 ...... Column2 ```````````````````````````````` 1 ........ 1 ............. 34 2 ........ 1 ............. 44 3 ........ 2 ............. 45 4 ........ 2 ............. 36 5 ........ 2 ............. 23 6 ........ 3 ............. 68 7 ........ 3 ............. 26
所以,我需要选择Column2的平均值,但是在执行此操作之前选择group1的列 我的意思是,如果我说Avg(Column2)它只返回一行,其中包含所有行的平均值。
我需要的是,首先我需要按列对它们进行分组,以便:
column2的平均值,其中column1 = 1
column2的平均值,其中column1 = 2
column2的平均值,其中column1 = 3
所以我希望返回3行,其中包含column1各自值的平均值。我迷失了这个,有任何提示/帮助吗?
ps:我尝试了几个相关的问题,但没有一个帮助/我无法理解。
答案 0 :(得分:19)
这是你想要的吗?
select column1, avg(column2) from table group by column1
答案 1 :(得分:4)
简单
select AVG(Column2) from table group by Column1
不起作用?
答案 2 :(得分:2)
SELECT column1, AVG(column2)
FROM "Insert table name"
GROUP BY column1
答案 3 :(得分:1)
SELECT Column1, AVG(Column2) FROM test GROUP BY Column1;
答案 4 :(得分:1)
以下查询将有助于计算ROW的平均值:
select Avg(A.Tamil + A.English + A.Maths + A.Science + A.Social_Science)/5 As
Average
from MarkTable A, MarkTable B, MarkTable C
where A.RollNo='14UCA002'
这可能有用......
答案 5 :(得分:0)
从平均值执行以下SQL:
select column1,avg(column2) from tablename group by column1;