我希望查询语句找到每个员工ID的每个KPI的平均值
目标表:
-----------------------------------
ID | KPI_ID | Scoure |
-----------------------------------
8543 | 5 | 1800 |
8543 | 5 | 1600 |
8543 | 3 | 80 |
9123 | 5 | 1400 |
9123 | 2 | 60 |
3789 | 1 | 40 |
8543 | 5 | 1400 |
8543 | 2 | 50 |
9123 | 5 | 1600 |
9123 | 1 | 70 |
3789 | 1 | 70 |
----------------------------------
输出表:
-----------------------------------
ID | KPI_ID | AVG_Scoure|
-----------------------------------
8543 | 5 | 1600 |
8543 | 3 | 80 |
9123 | 5 | 1500 |
9123 | 2 | 60 |
3789 | 1 | 55 |
8543 | 2 | 50 |
9123 | 1 | 70 |
----------------------------------
答案 0 :(得分:1)
仍然需要的信息是您的DBMS,您的查询应该是这样的:
SELECT ID, KPI_ID, Round(avg(Scoure)) AS AVG_Scoure
FROM tmpTable
GROUP BY ID, KPI_ID;
有关详细信息和详细信息,请查看此SQLFiddle http://www.sqlfiddle.com/#!2/7e2d6/2。 您甚至可以更改DBMS并检查它是否仍适用于您。