MySQL函数练习题

8 篇文章 0 订阅
6 篇文章 0 订阅
  1. dept表

在这里插入图片描述

  1. emp表

在这里插入图片描述

  1. job表

在这里插入图片描述

练习一

select * from job;
-- 1、查询emp表中名字长度超过3个字的员工姓名
select ename from emp where CHAR_LENGTH(ename)>3;
-- 2、查询emp表中员工‘总经理’入职月份的最后一天日期
select ename,LAST_DAY(hiredate) from emp where ename='总经理';
-- 3、查询emp表中员工‘总经理’入职前一天的日期
select ename,DATE_ADD(hiredate,INTERVAL -1 day) from emp where ename='总经理';
-- 4、查询job表中‘部门经理’这个职位的年薪(四舍五入统计有几万)
select ROUND(12*(sal+comm),-4) as部门经理年薪 from job where jobname='部门经理';
-- 5、查询job表中各个职位的年薪,如果是董事长按15薪统计,总经理按13薪统计
-- 方法一
select jobname as 职位,
case jobname
when '董事长' then 15*(sal+comm)
when '总经理' then 13*(sal+comm)
else 12*(sal+comm)
end
from job 
-- 方法二
select jobname as 职位,if(jobname="董事长",15*(sal+comm),if(jobname="总经理",13*(sal+comm),12*(sal+comm))) as
 年薪 from job ;

练习二

-- 1.在员工表中查询所有员工的信息
select * from emp;
-- 2.查询1部门所有的员工信息
select * from emp where deptno=1;
-- 3.查询姓名是董事长的员工的入职日期
select ename,hiredate from emp where ename='董事长';
-- 4.查询入职日期在2016-05-01之后的所有员工的姓名
select ename,hiredate from emp where hiredate>'2016-05-01';
-- 5.查询除董事长外的所有员工姓名和入职日期
select ename,hiredate from emp where not ename=('董事长') or ename <> '董事长' or ename != '董事长';
-- 6.查询4 部门入职日期在51号之后所有员工信息
select * from emp where deptno=4 and hiredate>'2016-05-01';
-- 7.查询1部门和2部门所有员工的姓名
select * from emp where deptno=1 or deptno=2;
-- 8.查询除董事长外的所有员工姓名和入职日期
-- 6666666666666666666666666666666666666666666666666666666
-- 9.查询入职日期在201651号和101号之间的所有同事的姓名和入职日期
select ename,hiredate from emp where hiredate BETWEEN'2016-05-01' and '2016-10-01'
-- 10.查询名字包括经理两个字的所有员工姓名
select ename from emp where like "%经理%";

数据库表文件.sql

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值