Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions sql-queries-3/sql-max-row-in-group
Submodule sql-max-row-in-group added at 358783
58 changes: 58 additions & 0 deletions sql-queries-3/sql-max-value-row-group/set_up_Schema.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
CREATE TABLE Employees (
id SERIAL PRIMARY KEY,
name VARCHAR(100),
department VARCHAR(50),
salary DECIMAL(10, 2)
);

INSERT INTO employees (name, department, salary) VALUES
('Alice', 'HR', 60000),
('Bob', 'HR', 80000),
('Charlie', 'IT', 90000),
('Dave', 'IT', 85000),
('Eve', 'Finance', 75000),
('Frank', 'Finance', 70000),
('Grace', 'HR', 62000),
('Hank', 'HR', 81000),
('Ivy', 'IT', 92000),
('Jack', 'IT', 86000),
('Karen', 'Finance', 77000),
('Leo', 'Finance', 72000),
('Mia', 'HR', 64000),
('Nate', 'HR', 82000),
('Olivia', 'IT', 93000),
('Paul', 'IT', 87000),
('Quinn', 'Finance', 78000),
('Rita', 'Finance', 73000),
('Steve', 'HR', 65000),
('Tina', 'HR', 83000),
('Uma', 'IT', 94000),
('Victor', 'IT', 88000),
('Wendy', 'Finance', 79000),
('Xander', 'Finance', 74000),
('Yara', 'HR', 66000),
('Zane', 'HR', 84000),
('Amy', 'IT', 95000),
('Brian', 'IT', 89000),
('Cathy', 'Finance', 80000),
('Dan', 'Finance', 76000),
('Ella', 'HR', 67000),
('Finn', 'HR', 85000),
('Gina', 'IT', 96000),
('Henry', 'IT', 90000),
('Irene', 'Finance', 81000),
('Jake', 'Finance', 77000),
('Kate', 'HR', 68000),
('Luke', 'HR', 86000),
('Megan', 'IT', 97000),
('Nick', 'IT', 91000),
('Olga', 'Finance', 82000),
('Pete', 'Finance', 78000),
('Quincy', 'HR', 69000),
('Rose', 'HR', 87000),
('Sam', 'IT', 98000),
('Tom', 'IT', 92000),
('Ursula', 'Finance', 83000),
('Vince', 'Finance', 79000),
('Wade', 'HR', 70000),
('Xena', 'HR', 88000);
8 changes: 8 additions & 0 deletions sql-queries-3/sql-max-value-row-group/using_CTEs.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
WITH MaxSalaries AS (
SELECT department, MAX(salary) AS max_salary
FROM Employees
GROUP BY department
)
SELECT e.id, e.name, e.department, e.salary
FROM Employees e
JOIN MaxSalaries ms ON e.department = ms.department AND e.salary = ms.max_salary;
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
SELECT id, name, department, salary
FROM (
SELECT id, name, department, salary,
ROW_NUMBER() OVER (PARTITION BY department ORDER BY salary DESC) AS rn
FROM Employees
) sub
WHERE rn = 1;
7 changes: 7 additions & 0 deletions sql-queries-3/sql-max-value-row-group/using_subqueries.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
SELECT id, name, department, salary
FROM Employees e1
WHERE salary = (
SELECT MAX(salary)
FROM Employees e2
WHERE e1.department = e2.department
);