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)else12*(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 部门入职日期在5月1号之后所有员工信息
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.查询入职日期在2016年5月1号和10月1号之间的所有同事的姓名和入职日期
select ename,hiredate from emp where hiredate BETWEEN'2016-05-01' and '2016-10-01'--10.查询名字包括经理两个字的所有员工姓名
select ename from emp where like "%经理%";