2017-08-16 113 views
-2

我有3列与id,level1,level2.I需要得到关于id的level1和level2的平均值.Same Id有多个level1和level2。在mysql中获取某些条件的行的平均值

我试图获得独特的行id..but平均我couldnt。

+--------+----------+-----------+ 
    | id  | level1 | level2 | 
    +--------+----------+-----------+ 
    | 1 | 2  | 4  | 
    +--------+----------+-----------+ 
    | 1 | 3  | 5  | 
    +--------+----------+-----------+ 
    | 1  | 1  |  4  | 
    +--------+----------+-----------+ 
    | 2 | 3  | 5  | 
    +--------+----------+-----------+ 
    | 2 | 4  | 2  | 
    +--------+----------+-----------+ 
    | 2 | 5  | 3  | 
    +--------+----------+-----------+ 

我需要像这样的输出。

+--------+----------+-------------------+ 
    | id  | avg_level1 | avg_level2 | 
    +--------+----------+-----------+-------- 
    | 1 | 2   | 4.33  | 
    +--------+----------+-----------+-------+ 
    | 2  | 4  | 3.33  | 
    +--------+----------+-----------+-------- 

回答

1
SELECT ID,AVG(level1) avg_level1,AVG(level2)avg_level2 
FROM TABLE GROUP BY ID 

你可以试试上面的代码。

这里我曾用过AVG的mysql内置函数。