I barely just started on database languages, so I do not know anything about JOIN, PARTITION, ETC. but this is what I have so far.
What I tried:
SELECT MIN(SALARY) AS "MIN SALARY", WORKING.DID, ENAME
FROM DEPARTMENT, EMPLOYEE, WORKING
WHERE WORKING.EID = EMPLOYEE.EID
GROUP BY WORKING.DID, ENAME;
Result:
MIN SALARY DID ENAME
---------- --- ------
10000 101 Dustin
15000 102 Bob
20000 102 David
10000 102 Dustin
10000 103 Alex
8000 103 Alice
7000 103 Mike
What I want:
MIN SALARY DID ENAME
---------- --- ------
10000 101 Dustin
10000 102 Dustin
7000 103 Mike
Table structures:
CREATE TABLE EMPLOYEE (
EID INTEGER NOT NULL,
ENAME VARCHAR(25),
SALARY DECIMAL,
PRIMARY KEY (EID)
);
CREATE TABLE WORKING (
EID INTEGER NOT NULL,
DID INTEGER NOT NULL,
STIME DATE,
FOREIGN KEY (EID) REFERENCES EMPLOYEE (EID),
FOREIGN KEY (DID) REFERENCES DEPARTMENT (DID),
PRIMARY KEY (EID, DID)
);
CREATE TABLE DEPARTMENT (
DID INTEGER NOT NULL,
DNAME VARCHAR(10),
DADDRESS VARCHAR(20),
PRIMARY KEY (DID)
);