Question:
How to display nth highest record in a table for example?How to display 4th highest (salary) record from customer table?
Answer:
Query: SELECT sal FROM `emp` order by sal desc limit (n-1),1If the question: "how to display 4th highest (salary) record from customer table."The query will SELECT sal FROM `emp` order by sal desc limit 3,1 Source: CoolInterview.com
select sal from emp order by descending where rownum=4 Source: CoolInterview.com
Answered by: Nibedita Swain | Date: 3/10/2008
| Contact Nibedita Swain
There are two ways - Using LIMIT clause - Special SQL
Using LIMIT there are issues that if table has got same salary (field) value multiple times, but this will show you only one record, then you will not get to know that there are also others with same salary.
Another SQL Approach is - ------------- select a.empid, a.salary from employees as a where 2 =(select count(distinct b.salary) from employees as b where b.salary >=a.salary) --------------- this query will return you all the rows which comes under this criteria. Source: CoolInterview.com
Answered by: kishor | Date: 9/23/2008
| Contact kishor
select * from TABLENAME where salary=(select salary from TABLENAME order by salary desc limit 4,1)
The following example is for the 6th highest :- select * from TABLENAME where salary=(select salary from TABLENAME order by salary desc limit 6,1)
Source: CoolInterview.com
Answered by: Amit Shah | Date: 10/16/2008
| Contact Amit Shah
select min(sal) from(select top(4)sal from tbsalary order by sal desc)as tbl Source: CoolInterview.com
Answered by: Latika | Date: 12/28/2009
| Contact Latika
Amit Shah's answer works if there is only one record for top 3 salaries.
Including distinct command will work in all cases. Hence the query becomes,
SELECT * FROM `table_name` WHERE field_salary = (SELECT DISTINCT field_salary FROM `table_name` ORDER BY field_salary DESC LIMIT 4,1) Source: CoolInterview.com
Answered by: Sriram Seshadri | Date: 5/14/2010
| Contact Sriram Seshadri
If you have the better answer, then send it to us. We will display your answer after the approval.
Rules to Post Answers in CoolInterview.com:-
- There should not be any Spelling Mistakes.
- There should not be any Gramatical Errors.
- Answers must not contain any bad words.
- Answers should not be the repeat of same answer, already approved.
- Answer should be complete in itself.
|