以下のようにOracleにテーブルがあります
CREATE TABLE Employees(EmpId INT,
EmpName VARCHAR2(30),
Designation VARCHAR2(30),
Salary INT);
以下のようにテーブルに行を挿入しました
INSERT ALL
INTO Employees(EmpId, EmpName, Designation, Salary)VALUES(101, 'Scott', 'Clerk', 2500)
INTO Employees(EmpId, EmpName, Designation, Salary)VALUES(102, 'Mac', 'Manager', 5000)
INTO Employees(EmpId, EmpName, Designation, Salary)VALUES(103, 'Steave', 'Clerk', 1500)
INTO Employees(EmpId, EmpName, Designation, Salary)VALUES(104, 'John', 'Clerk', 1500)
INTO Employees(EmpId, EmpName, Designation, Salary)VALUES(105, 'Jack', 'Analyst', 2500)
INTO Employees(EmpId, EmpName, Designation, Salary)VALUES(106, 'Paul', 'Manager', 4500)
INTO Employees(EmpId, EmpName, Designation, Salary)VALUES(107, 'Ryan', 'Clerk', 1250)
INTO Employees(EmpId, EmpName, Designation, Salary)VALUES(108, 'Phillipe', 'Analyst', 3150)
INTO Employees(EmpId, EmpName, Designation, Salary)VALUES(109, 'Clark', 'Clerk', 1200)
INTO Employees(EmpId, EmpName, Designation, Salary)VALUES(110, 'Arnold', 'Clerk', 1100)
SELECT * FROM dual;
以下は表の簡単な概要です
今、私は以下のように指定によってグループ化されたトップ有料の人々を取得したい
EmpName Designation Salary
Phillipe Analyst 3150
Scott Clerk 2500
Mac Manager 5000
empName、Description、および指定による最大給与が必要です。
以下のクエリを試しましたが、すべてのレコードが表示されます
SELECT EmpName, Designation, max(Salary) AS msal
FROM Employees
GROUP BY Designation, EmpName
ORDER BY Designation, msal DESC
返信ありがとう