Is there a command akin to:
2nd highest salary from tbl_salary
or
4th highest salary from tbl_salary
?
You can do it using the limit clause:
select * from tbl_salary order by salary desc limit 2,1;
SELECT sal from emp order by sal desc limit 1,1
select * from employee order by salary desc limit 1,1
Description : limit x,y
I'm sure there is a better way to do this, but:
SELECT salary FROM tbl_salary ORDER BY salary DESC LIMIT n,1
Where n is the position you want - 1 (i.e. to get the second highest salary it would be LIMIT 1,1)
Here is a very simple way to get the result of n'th highest value
put n=2 to get second highest salary
pur n=4 to get fourth highest salary
and so on...
Here is query
if n=2
select salary from tbl_salary e1
where 2 = (
select distinct(count(salary))
from tbl_salary e2
where e1.salary< e2.salary
)
Best luck
If it's a basic query, then just use LIMIT:
-- get the 4th highest salary
SELECT salary FROM tbl_salary
ORDER BY salary DESC
LIMIT 3,1