2013-02-24 83 views
0

我想查询语句查找平均每个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  | 
---------------------------------- 
+5

这看起来像一个基本的'AVG .... GROUP BY'查询。除了问这里之外,你有没有尝试过任何东西?完成任何研究? – 2013-02-24 12:15:12

回答

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并检查它是否仍然适用于您的。

+0

太棒了,但AVG_Scoure列双我想保持整数 – KaZzA 2013-02-24 12:45:15

+0

您使用哪些DBMS? – araknoid 2013-02-24 12:47:55

+0

MS ACCESS 2010! – KaZzA 2013-02-24 12:49:19