Mysql 单表查询简单查询
一、目的
1、掌握SELECT命令单表查询基本结构
2、学会使用SQL命令进行单表查询操作
二、内容
用于企业管理的员工管理数据库,数据库名为YGGL,包含员工信息表Employees、部门信息表Departments、员工薪水情况表Salary ,各表数据如下。
对YGGL数据库完成以下查询。
1、SELECT语句查询
(1).查询employees表部门号和性别,要求消除重复行。
SELECT DISTINCT 员工部门号,性别
FROM employees ;
(2).计算每个雇员的实际收入。
SELECT 姓名,(收入-支出)
FROM salary;
在这里插入代码片
(3).查询employees表中员工的姓名和性别,要求sex值为1时显示为“男”,为0时显示为“女”。
SELECT 姓名, CASE WHEN sex=’1’ then sex=’男’ WHEN sex=’0’ then sex=’女’ as 性别
FROM employees;
(4).查询每个雇员的地址和电话,显示的列标题要求显示“address”“telephone”。
SELECT 地址 as address,电话 as telephone
FROM employees;
(5).计算salary表中员工月收入的平均数。
SELECT AVG(收入) as 月收入平均数
FROM salary;
(6).计算所有员工的总支出。
SELECT sum(支出)
FROM salary;
(7).显示女雇员的地址和电话。
SELECT 姓名,地址,电话号码
FEROM employees
WHERE 性别=’0’;
(8).计算员工总数。
SELECT COUNT(* )
FROM employees;
(9).显示员工的最高收入和最低收入。
SELECT MAX(收入),MIN(收入)
FROM salary;
2、条件查询
(1).显示月收入高于2000元的员工的员工号。
SELECT 员工编号 from salary where 收入>2000;
(2).查询1970年以后出生的员工的姓名和地址。
Select 姓名,地址
From employees
Where year(出生日期)>1970;
(3).显示工作年限三年以上(含3年)、学历在本科以上(含本科)的男性员工的信息。
Select *
From employees
Where 工作年限>=3 and (学历=’本科’ or 学历=’硕士’) and 性别=1;
(4).查找员工号码中倒数第二个数字为0的姓名、地址和学历。
Select 姓名,地址,学历
From employees
Where 员工编号 like ‘%0_’;
(5).查询月收入在2000~3000元的员工姓名。
Select 姓名
From employees
Where 员工编号 in (select 员工编号 from salary where 收入 between 2000 and 3000);