How to use Subquery In SQL
By using the Joins, we can use subquery for finding the nth highest salary. In our approach, we will simply find all the rows which have the salary lower than the maximum salary. From that result we will find the highest salary which will be our desired result. Here is the query for this approach.
SELECT t."Group_Id", MAX(t."Salary") AS Salary
FROM "Test" t
WHERE t."Salary" < (
SELECT MAX("Salary")
FROM "Test" t2
WHERE t2."Group_Id" = t."Group_Id"
)
GROUP BY t."Group_Id";
Output:
Group_id |
salary |
---|---|
1 |
25000 |
2 |
30000 |
3 |
15000 |
Explanation:
We have simply find the highest salary in each group and fetch all the records which have less salary than highest salary. In other words we have removed the records which have highest salary. Now from the remaining records highest salary will be the 2nd highest salary of the overall records.
List the Second Highest Salary By Department
Listing the second-highest salary by department is a common task that explains the use of advanced PostgreSQL techniques. It offers several functions and methods to achieve this.
In this article, we will explore three approaches that help us to List the Second Highest Salary By Department with the help of examples and so on.
Contact Us