Posts

Showing posts from May, 2015

Find 3rd Highest Salary

---------Using Sub Query 3rd Highest Salary All Employees--------- SELECT * FROM Emp WHERE Salary IN( SELECT TOP 1   salary FROM ( SELECT TOP 3 salary FROM Emp e ORDER BY Salary DESC ) a ORDER BY a.Salary ) ------------------- 3rd highest salary----------- -----3rd Hightest salary---------- DECLARE @n INT=3 SELECT DISTINCT(Salary) from emp e1 where @n=( SELECT COUNT(DISTINCT(salary))  from emp e2 where  e2.salary>=e1.salary ) --------------3rd Highest Salary-----------  ;WITH cte AS  (      SELECT Id,Name,e.Salary, DENSE_RANK() OVER (PARTITION BY e.Salary ORDER BY e.Salary) AS sal      FROM Emp e  )  SELECT *  FROM cte WHERE sal=2 ----------------------- DECLARE @N int SET @N = 3  -- Change the value here to pick a different salary rank SELECT Salary FROM (     SELECT row_number() OVER (ORDER BY Salary DESC) as SalaryRank, Salary     FROM Emp e ) as SalaryCTE WHERE...