SQL查询来进行查找平均为每个员工ID
问题描述:
我想查询语句查找平均每个KPI为每个员工IDSQL查询来进行查找平均为每个员工ID
目标表:
-----------------------------------
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 |
----------------------------------
答
仍然需要的信息是您的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并检查它是否仍然适用于您的。
这看起来像一个基本的'AVG .... GROUP BY'查询。除了问这里之外,你有没有尝试过任何东西?完成任何研究? – 2013-02-24 12:15:12