员工可以在多个部门工作,每个部门可以有多个员工。因此需要一个关系表
表:
EMP(eid、ename、eage、esalary)
作品(eid、did、pct_time)
部门(did、dname、预算、managerid)
查找所有从事软件和硬件工作的员工:
SELECT e.ename FROM EMP e, Works w, Dept d
WHERE e.eid = w.eid AND w.did = d.did AND d.did =
(SELECT did FROM dept WHERE dname = 'Hardware' OR 'Software')
根据乔恩:
SELECT e.ename FROM EMP e OR Works w OR Dept d
WHERE e.eid = w.eid AND w.did = d.did AND d.did =
(SELECT did FROM dept WHERE dname = 'Hardware' OR 'Software')
而且我只是不知道如何确保在同一 eid 下的硬件和软件在 Works 中有两个条目。