T_Emp (职工表)
dept_id P_deptid dept_name
001 0 公司A
002 001 软件一部
003 002 开发组
004 002 测试组
005 001 品管部
T_Emp (职工表)
emp_id dept_id emp_name
001 001 小曹
002 003 小刘
003 003 小胡
005 004 老张
006 005 老关 a、写出查询软件一部及其下属部门的所有员工的SQL语句;
b、写出向职工表中插入部门编号:111,员工编号:888,姓名:小李的职工数据,部门表中没有部门编号111的部门,部门表的部门编号是职工表的部门编号的外键;
c、写出用树形结构展现部门表数据的SQL语句。
设有关系EMP(ENO,ENAME,SALARY,DNO),其中各属性的含义依次为职工号、姓名、工资、所在部门号,以及关系DEPT(DNO,DNAME,MANAGER),其中各属性含义依次为部门号、部门名称、部门经理的职工号。
1.请通过SQL语句创建表EMP、DEPT。
2.试用SQL语句完成以下查询:列出各部门中工资不低于600元的职工的平均工资。
3.写出“查询001号职工所在部门名称”的关系代数表达式。
4.请用SQL语句将“销售部”的那些工资数额低于600的职工的工资上调10%。
dept_id P_deptid dept_name
001 0 公司A
002 001 软件一部
003 002 开发组
004 002 测试组
005 001 品管部
T_Emp (职工表)
emp_id dept_id emp_name
001 001 小曹
002 003 小刘
003 003 小胡
005 004 老张
006 005 老关 a、写出查询软件一部及其下属部门的所有员工的SQL语句;
b、写出向职工表中插入部门编号:111,员工编号:888,姓名:小李的职工数据,部门表中没有部门编号111的部门,部门表的部门编号是职工表的部门编号的外键;
c、写出用树形结构展现部门表数据的SQL语句。
设有关系EMP(ENO,ENAME,SALARY,DNO),其中各属性的含义依次为职工号、姓名、工资、所在部门号,以及关系DEPT(DNO,DNAME,MANAGER),其中各属性含义依次为部门号、部门名称、部门经理的职工号。
1.请通过SQL语句创建表EMP、DEPT。
2.试用SQL语句完成以下查询:列出各部门中工资不低于600元的职工的平均工资。
3.写出“查询001号职工所在部门名称”的关系代数表达式。
4.请用SQL语句将“销售部”的那些工资数额低于600的职工的工资上调10%。
with
district as
(
-- 获得第一个结果集,并更新最终结果集
select dept_id from T_Emp where dept_name
= N'软件一部'
union all
select dept_id fromT_Emp a, district b
where a.parent_id = b.id
)
select * from [职工表] where dept_id in (select dept_id from district)
district as
(
-- 获得第一个结果集,并更新最终结果集
select dept_id from T_Emp where dept_name
= N'软件一部'
union all
select dept_id fromT_Emp a, district b
where a.parent_id = b.dept_id )
select * from [职工表] where dept_id in (select dept_id from district)