数据库关系代数的查询

考虑如下某公司HR(人力资源)系统的关系模式,其中主码下标有下划线:
Employee(employee-id,name,address) //员工(员工编号,姓名,住址)
Department(department-id,name) //部门(部门编号,部门名)
Works(employee-id,department-id,begin-date,end-date) //工作(员工编号,部门编号,开始工作日期,离职日期)
1. 查询“t1003”号员工工作过的各部门部门编号和部门名;
2. 查询在“t1003”号员工工作过的所有部门都工作过的员工的编号及其姓名;

1. 查询“t1003”号员工工作过的各部门部门编号和部门名;

select d.department-id,d.name from Works w,Department d where w.department-id=d.department-id and w.employee-id ='t1003'

2. 查询在“t1003”号员工工作过的所有部门都工作过的员工的编号及其姓名;
select e.employee-id,e.name from Employee e,Works w where e.employee-id=w.employee-id and w.department-id in( select d.department-id from Works w,Department d where w.department-id=d.department-id and w.employee-id ='t1003' )

试下吧,费了我不少时间啊,好久不写了,呵呵。
温馨提示:答案为网友推荐,仅供参考
相似回答