要求查询出所有基本工资等于 3000 的雇员信息(sal 为基本工资)
select * from emp where sal = 3000;
查询出姓名是SCOTT 的雇员信息
select * from emp where ename = 'SCOTT'; 或者 select * from emp where ename in('SCOTT'); 或者 select * from emp where ename like 'SCOTT';
查询职位为(MANAGER)的员工的编号,姓名
select empno ,ename from emp where job = 'MANAGER'; 或者 select empno, ename from emp where job in('MANAGER'); 或者 select empno, ename from emp where job like 'MANAGER';
要求查询出在1981年雇佣的全部雇员信息
select * from emp where hiredate like '%81';
查询所有部门号不是10的雇员信息
select * from emp where deptno != 10; 或者 select * from emp where deptno not in(10); 或者 select * from emp where deptno not like 10;
查询出雇员编号是 7369,7499,7521的雇员的信息
select * from emp where empno in(7369,7499,7521);或者select * from emp where empno = 7369 or empno = 7499 or empno =7521;
查询出所有的雇员的编号,姓名,工资,按照(sal*12)年薪降序排序
select empno,ename,sal,(12*sal) yearsal from emp order by yearsal desc;
查询(comm)佣金高于(sal)薪金的 60%的员工
select * from emp where (comm-sal*0.6)>0;
找出部门 10 中所有经理(MANAGER)和部门 20 中所有办事员(CLERK)的详细资料。
select * from emp where (deptno = 10 and job = 'MANAGER') or (deptno = 20 and job = 'CLERK');
找出部门 10 中所有经理(MANAGER),部门 20 中所有办事员(CLERK),既不是经理又不是办事员但其薪金大于 或等于 2000 的所有员工的详细资料。
select * from emp
where (deptno = 10 and job = 'MANAGER') or (deptno = 20 and job = 'CLERK') or (job not in('MANAGER','CLERK') and sal >=2000);
- 显示不带有“R”的员工的姓名。
select * from emp where ename not like '%R%';
- 找出不收取佣金或收取的佣金低于 100 的员工
select * from emp where comm is null or comm <100;
- 按照部门编号显示所有雇员信息
select * from emp
order by deptno;
- 显示姓名字段的任何位置包含“A”的所有员工的信息,显示的结果按照基本工资由高到低排序,如果基本工资相同, 则按照雇佣年限由早到晚排序,如果雇佣日期相同,则按照职位排序。
select * from emp
where ename like '%A%'
order by sal desc,hiredate asc,job;