查询以获得多个列和行的平均值

时间:2014-09-23 17:14:59

标签: sql select average

我的表格数据如下

id    a      b      c      d
101    2      2      2      2
101    3      3      3      3
101    2      2      2      2
102    5      5      5      5
102    5      5      5      5

我想按照id和所有关注行和列的平均值输出 例如

id     average
101    2.33
102    5

2 个答案:

答案 0 :(得分:3)

试试这个:

select id, avg((a+b+c+d)/4) from table_name group by id;

答案 1 :(得分:1)

平均值是项目总和除以计数。关于这两个数学函数的好处是它们是累积的,所以:

SELECT   id, SUM (a + b + c + d) / (COUNT(*) * 4) -- There are four columns
FROM     my_table
GROUP BY id