使用My SQL 1、列出各部门中工资不低于600元的职工的平均工资。(10分) 2、查询001号职工所在部门名称。(10分) 3、将“销售部”的那些工资数额低于600的职工的工资上调10%。(10分) 4、在EMP表中增加“EID(员工身份证)”字段,数据类型varchar(18),不可空,并将其设定为UNIQUE约束。(10分)
时间: 2024-02-24 15:53:43 浏览: 37
好的,以下是在MySQL中针对上述问题的SQL语句:
1、列出各部门中工资不低于600元的职工的平均工资。
```
SELECT DNO, AVG(SALARY) FROM EMP WHERE SALARY >= 600 GROUP BY DNO;
```
这条SQL语句会返回一个结果集,其中包含了每个部门中工资不低于600元的职工的平均工资。我们首先在EMP表中筛选出工资不低于600元的记录,然后按照部门号(DNO)进行分组,并计算每个分组中工资的平均值。
2、查询001号职工所在部门名称。
```
SELECT DNAME FROM DEPT WHERE DNO = (SELECT DNO FROM EMP WHERE ENO = 001);
```
这条SQL语句会返回一个结果集,其中包含了001号职工所在部门的名称。我们首先在EMP表中筛选出职工号为001的记录,并获取其部门号(DNO),然后在DEPT表中查找部门号为该值的记录,并获取其部门名称(DNAME)。
3、将“销售部”的那些工资数额低于600的职工的工资上调10%。
```
UPDATE EMP SET SALARY = SALARY * 1.1 WHERE DNO = (SELECT DNO FROM DEPT WHERE DNAME = '销售部') AND SALARY < 600;
```
这条SQL语句会将“销售部”的工资数额低于600的职工的工资上调10%。我们首先在DEPT表中查找部门名称为“销售部”的记录,并获取其部门号(DNO),然后在EMP表中筛选出部门号为该值且工资数额低于600的记录,并将其工资上调10%。
4、在EMP表中增加“EID(员工身份证)”字段,数据类型varchar(18),不可空,并将其设定为UNIQUE约束。
```
ALTER TABLE EMP ADD COLUMN EID VARCHAR(18) NOT NULL UNIQUE;
```
这条SQL语句会在EMP表中增加一个名为“EID”的字段,数据类型为varchar(18),不可空,并将其设定为UNIQUE约束。注意,如果EMP表中已经存在名为“EID”的字段,则会添加失败。