mysql数据库实验实训5,数据查询yggl数据库查询(详细)

数据库实验yggl数据库,实训5(详细版)

1.SELECT语句的基本使用:

1-1:查询employees 表的员工部门号和性别,要求消除重复行

select distinct ‘员工部门号’,‘性别’ from employees;
在这里插入图片描述

1-2: 计算salary表每个雇员的实际收入(实际收入=收入-支出)。

select (收入-支出) as ‘实际收入’ from salary;

在这里插入图片描述

1-3: 查询employees表中员工的姓名和性别,要求sex值为1时,显示为‘男’,为0时显示为‘女’。

mysql> Select 姓名,
-> case
-> when 性别=1 then “男”
-> when 性别=0 then “女”
-> end as 性别
-> from employees;

在这里插入图片描述

1-4:查询每个雇员的地址和电话号码,显示列标题为adress,telephone

mysql> select 地址 as ‘adress’, 电话号码 as ‘telephone’ from employees;

在这里插入图片描述

1-5: 计算salary表中员工月收入的平均数

mysql> select avg(收入) as 月平均收入 from salary;

在这里插入图片描述

1-6: 计算所有员工的总支出

mysql> select sum(支出) as 总支出 from salary;

在这里插入图片描述

1-7: 显示女雇员的地址和电话号码

select 姓名,地址,电话号码 from employees where 性别=0;

在这里插入图片描述

1-8: 计算员工总数

mysql> select count(*) from employees;

在这里插入图片描述

1-9: 显示员工的最高收入和最低收入的员工编号

mysql> Select max(收入),min(收入) from salary;

在这里插入图片描述

2.条件查询:

2-1: 显示月收入高于2000元员工的员工号。

mysql> select 员工编号 from salary where 收入>2000;

在这里插入图片描述

2-2: 查询1970年以后的员工的姓名和地址。

mysql> select 姓名,地址 from employees where 出生日期>“1970-1-1”;

在这里插入图片描述

2-3: 显示工作年限三年以上(包含3年)、学历在本科以上(包含本科)的男性员工的信息。

mysql> select * from employees where 工作年限>=3 and (学历=“本科” or 学历=“硕士”) and 性别=1;

在这里插入图片描述

2-4: 查找员工中倒数第二个数字为0的员工的姓名、地址和学历。

mysql> select 姓名,地址,学历 from employees where 员工编号 like “%0_”;

在这里插入图片描述

2-5: 查询月收入在2000-3000元的员工。

select * from salary where 收入>=2000 and 收入<=3000;

在这里插入图片描述

3.多表查询:

3-1: 查询王林的基本情况和所工作的部门名称

mysql> select * from employees ,departments
-> where employees.员工部门号=departments.部门编号 and 姓名=‘王林’;

在这里插入图片描述

3-2: 查询财务部、研发部、市场部的员工信息。

mysql> select * from employees ,departments
-> where employees.员工部门号=departments.部门编号
-> and (部门名称=“财务部” or 部门名称=“市场部” or 部门名称=“研发部”);

在这里插入图片描述

3-3: 查询每个雇员的基本情况和薪水情况。

mysql> Select * from employees join salary using(员工编号);

在这里插入图片描述

3-4: 查询研发部在1970年以前的员工姓名和薪水情况。

mysql> select e.姓名,s.收入,s.支出
-> from employees e,salary s,departments d
-> where e.员工部门号=d.部门编号 and e.员工编号=s.员工编号 and d.部门名称=“研发部”
-> and e.出生日期 <‘1970-01-01’;

在这里插入图片描述

3-5: 查询employees表中员工的姓名、住址和收入水平,要求2000元以下显示为‘低收入’,2000-3000显示为‘中等收入’,3000元以上显示为‘高收入’。

mysql> select 姓名,地址,
-> case
-> when 收入<2000 then “低收入”
-> when 收入>3000 then “高收入”
-> when 收入>2000 and 收入<3000 then “中等收入”
-> end as “收入等级”
-> from employees,salary where employees.员工编号=salary.员工编号;

在这里插入图片描述

4.分类汇总与排序:

4-1: 按部门列出该部门的员工人数。

mysql> select d.部门名称,count(e.姓名) as “员工总人数”
-> from employees e,departments d
-> where e.员工部门号=d.部门编号 group by d.部门名称;

在这里插入图片描述

4-2: 分别统计男性员工和女性员工人数。

mysql> select count(*) as “人数”,
-> case
-> when 性别=1 then “男”
-> when 性别=0 then “女”
-> end as 性别
-> from employees group by 性别;

在这里插入图片描述

4-3: 查找雇员数超过2人的部门名称和员工数量。

mysql> select d.部门名称, count(e.姓名) as “员工总人数” from employees e,departments d
-> where e.员工部门号=d.部门编号
-> group by d.部门名称 having count(*)>2;

在这里插入图片描述

4-4 按员工学历分组统计各种学历人数。

mysql> select 学历,count(*) as人数
-> from employees group by 学历;

在这里插入图片描述

4-5: 将员工信息按出生日期从大到小排序。

mysql> select * from employees order by 出生日期;

在这里插入图片描述

4-6: 将员工薪水按收入多少从小到大排序

mysql> select * from salary order by 收入;

在这里插入图片描述

4-7: 按员工的工作年限分组,统计各个工作年限的人数,并按人数从小到大排序

mysql> select 工作年限 ,count(*) as ‘人数’
-> from employees group by 工作年限
-> order by 人数;

在这里插入图片描述

4-7: 按员工的工作年限分组,统计各个工作年限的人数,并按人数从小到大排序

mysql> select 工作年限 ,count(*) as ‘人数’
-> from employees group by 工作年限
-> order by 人数;

在这里插入图片描述

  • 58
    点赞
  • 306
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

葡萄成熟时_

谢谢您,祝您生活愉快,所想及得

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值