用sql语言列出各部门工资不低于600元的职工信息。
时间: 2024-03-12 15:43:38 浏览: 30
可以使用以下 SQL 语句来列出各部门工资不低于 600 元的职工信息:
```
SELECT *
FROM employees
WHERE salary >= 600
GROUP BY department;
```
其中,`employees` 是职工表的表名,`salary` 是工资列的列名,`department` 是部门列的列名。这条 SQL 语句会筛选出工资不低于 600 元的职工信息,并按照部门进行分组,返回每个部门的职工信息。
相关问题
写出SQL语句: 列出各部门工资不低于600元的职工信息。 查询001号职工所在部门名称。 将“销售部”的那些工资低于600元的职工工资上调10%。 在员工表中增加“员工身份证”字段,数据类型为varchar(18),不可为空,并将其设定为UNIQUE约束。 创建一个存储过程,通过输入某一员工姓名,筛选出该员工的基本信息,对不存在此员工姓名输入值,必须做一检测,打印信息“不存在此员工”。
1. 列出各部门工资不低于600元的职工信息:
```
SELECT *
FROM 员工表
WHERE 工资 >= 600
GROUP BY 部门编号;
```
2. 查询001号职工所在部门名称:
```
SELECT 部门名称
FROM 部门表
WHERE 部门编号 = (
SELECT 部门编号
FROM 员工表
WHERE 员工编号 = '001');
```
3. 将“销售部”的那些工资低于600元的职工工资上调10%:
```
UPDATE 员工表
SET 工资 = 工资 * 1.1
WHERE 部门编号 = (
SELECT 部门编号
FROM 部门表
WHERE 部门名称 = '销售部')
AND 工资 < 600;
```
4. 在员工表中增加“员工身份证”字段,数据类型为varchar(18),不可为空,并将其设定为UNIQUE约束:
```
ALTER TABLE 员工表
ADD 员工身份证 VARCHAR(18) NOT NULL UNIQUE;
```
5. 创建一个存储过程,通过输入某一员工姓名,筛选出该员工的基本信息,对不存在此员工姓名输入值,必须做一检测,打印信息“不存在此员工”:
```
CREATE PROCEDURE search_employee_info(IN name VARCHAR(20))
BEGIN
DECLARE emp_count INT;
SELECT COUNT(*) INTO emp_count FROM 员工表 WHERE 姓名 = name;
IF emp_count = 0 THEN
SELECT "不存在此员工" AS info;
ELSE
SELECT * FROM 员工表 WHERE 姓名 = name;
END IF;
END;
```
以上是SQL语句的示例,可能需要根据实际情况做一些调整。
使用My SQL 1、列出各部门中工资不低于600元的职工的平均工资。(10分) 2、查询001号职工所在部门名称。(10分) 3、将“销售部”的那些工资数额低于600的职工的工资上调10%。(10分) 4、在EMP表中增加“EID(员工身份证)”字段,数据类型varchar(18),不可空,并将其设定为UNIQUE约束。(10分)
好的,以下是在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”的字段,则会添加失败。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![-](https://csdnimg.cn/download_wenku/file_type_lunwen.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)