Find top Nth employee from each department in terms of
salary?
Answers were Sorted based on User's Feedback
Answer / saurav kumar
select min(salary) from tablename where salary in (select
top N salary from tablename orderby salary desc)
| Is This Answer Correct ? | 6 Yes | 2 No |
Answer / ricky
select min(salary) from tablename where salary is(select
top n salary from tablename order by salary desc)
| Is This Answer Correct ? | 3 Yes | 0 No |
Answer / pradeep nambiar
select distinct(a.salary) from employee a where &n=(select
count(distinct(b.salary)) from employee b where
a.salary=b.salary)
| Is This Answer Correct ? | 3 Yes | 1 No |
Answer / akhil saxena
select e1.sal from emp e1 where
n-1 = (select count(distinct(e2.sal)) from emp e2
where e2.sal<e1.sal)
| Is This Answer Correct ? | 3 Yes | 2 No |
Answer / chandra sekhar
CREATE A EMPLOYEES TABLE WITH THE COLUMNS
EMPLOYEEID,EMPLOYEENAME,DEPARTMENT,SALARY
AND INSERT THE RECORDS INTO THE TABLE
with cte
as (
select dense_RANK() over(partition by department order by salary desc) as Rank,
employeeID,employeename,department,salary from
Employees)
select x.employeeID,
x.employeename,
x.department,
x.salary,
x.rank
from cte x
where x.Rank=2
order by x.Salary
NOTE:here i am finding 2nd highest salary from the each department
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / madhu sudhan g
Hi,
For suppose the table is like emp having some departments
Here i am retrieving some 'X' department employees
;WITH myTableWithRows AS (
SELECT (ROW_NUMBER() OVER (ORDER BY Salary)) as row,*
FROM emp)
SELECT empname
FROM myTableWithRows
WHERE row = Nth row and
Dept='x'
ORDER BY Salary
| Is This Answer Correct ? | 0 Yes | 0 No |
Answer / rakhi
Select Salary From [TableNAme] WHERE Salary IN(Select Top
Nth Salary From [TableName] ORDER BY Salary DESC) ORDER BY
DESC
| Is This Answer Correct ? | 0 Yes | 1 No |
Answer / sandeep modapathi
SELECT DISTINCT MIN(SALARY),DEPARTMENT
FROM (SELECT TOP ((SELECT COUNT(DISTINCT DEPARTMENT) FROM
EMPLOYEE)*@N)
SALARY,DEPARTMENT
FROM EMPLOYEE ORDER BY SALARY DESC
) AS CUR1 GROUP BY DEPARTMENT
try it out ..................
it will show you the Nth top salary for each department
| Is This Answer Correct ? | 0 Yes | 1 No |
Answer / gopi muluka
Execute below query against Adventureworks database
WITH CTE AS(
SELECT D.Name AS Department,E.EmployeeID,(RANK() OVER
(PARTITION BY D.Name ORDER BY MAX(Rate) DESC)) AS
EmployeeRank, MAX(Rate) AS HourlyRate
FROM [AdventureWorks].[HumanResources].[Employee] E
INNER JOIN HumanResources.EmployeePayHistory PH
ON E.[EmployeeID]=PH.[EmployeeID]
INNER JOIN HumanResources.EmployeeDepartmentHistory DH
ON E.EmployeeID=DH.EmployeeID
AND DH.EndDate IS NULL
INNER JOIN HumanResources.Department D
ON DH.DepartmentID=D.DepartmentID
GROUP BY D.Name,E.EmployeeID
)
SELECT * FROM CTE WHERE EmployeeRank=2
ORDER BY Department,EmployeeRank,EmployeeID
| Is This Answer Correct ? | 1 Yes | 3 No |
Answer / saber ali
select max(salary) from employee where salary in (select top
4 salary from employee order by salary desc)
| Is This Answer Correct ? | 1 Yes | 3 No |
What is ms sql server reporting services?
What is the difference between a function and a stored procedure?
Does sql server use java?
What are functions in the sql server?
Different types of keys in SQL?
how you can get the list of largest tables in a database? : Sql server administration
What is an extended stored procedure? Can you instantiate a COM object by using T-SQL?
Does view occupy space?
What is the basic functions for master, msdb, tempdb databases?
What does it mean to normalize a database and why would you do it?
What do you understand by a view? What does the with check option clause for a view do?
Issues related in upgrading SQL Server 2000 to 2005 / 2008
Oracle (3259)
SQL Server (4518)
MS Access (429)
MySQL (1402)
Postgre (483)
Sybase (267)
DB Architecture (141)
DB Administration (291)
DB Development (113)
SQL PLSQL (3330)
MongoDB (502)
IBM Informix (50)
Neo4j (82)
InfluxDB (0)
Apache CouchDB (44)
Firebird (5)
Database Management (1411)
Databases AllOther (288)