View previous topic :: View next topic
|
Author |
Message |
ovreddy
Active User
Joined: 06 Dec 2004 Posts: 211 Location: Keane Inc., Minneapolis USA.
|
|
|
|
Hi All,
I have posted salaries of employees as follows...
EMPNO YEAR EARNINGS
101 1995 120000
102 1998 430000
101 1998 300000
102 1995 180000
My requirement is i need to found the top 20 EARNING employees list. The query will be similar to the following ...
SELECT EMPNO,SUM(EARNINGS) FROm EAR-EMP GROUP BY EMPNO;
( But it needs to display top 20 of the above result)
Thanks,
Reddy. |
|
Back to top |
|
|
priyesh.agrawal
Senior Member
Joined: 28 Mar 2005 Posts: 1448 Location: Chicago, IL
|
|
|
|
Hi Reddy,
Try this query ...First I am retrieving the 20th top most earning from the table & then by comparing to that we can extract desired result.
Code: |
SELECT EMPNO, SUM(EARNINGS) FROM EAR-EMP GROUP BY EMPNO HAVING EARNINGS >= (SELECT EARNINGS FROM EAR-EMP A where N = ( SELECT COUNT(*) FROM EAR-EMP B WHERE A.EARNINGS < B.EARNINGS )); |
Let me know, whether it works for you.... I hope well...
Regards,
Priyesh. |
|
Back to top |
|
|
|