1、定义:查询符合条件的数据
select
字段1,字段2,字段3
from
表名
where
条件;
2、条件类型
①=等于
查询薪资等于800的员工名字和编号
select empno,empname from emp where sal = 800;
查询SMITH的编号和薪资
select empno,ename,sal from emp where ename = 'SMITH';
②<>或!=不等于
查询薪资不等于800的员工姓名和编号
select empno,empname from emp where sal != 800;
③<小于
查询工资小于2000的员工姓名和编号
select empno,ename,sal from emp where sal < 2000;
④<=
查询薪资小于等于3000的员工姓名和编号
select empno,ename,sal from emp where sal <= 3000;
⑤>
查询薪资大于3000的员工姓名和编号
select empno,ename,sal from emp where sal > 3000;
⑥between ... and(两个值之间,等同于>= and <=)——必须遵循左小右大
查询薪资在2450和3000之间的员工信息。包括2450和3000
select empno,ename,sal from emp where sal between 2450 and 3000;
⑦is null 为null(is not null不为空)
注意:=null ×——在数据库中,null代表什么也没有,不是一个值,不能使用=衡量
查询哪些员工的补助为null
select empno,ename,comm from emp where comm is null;
⑧and
查询工作岗位是manager,并且工资大于2500的员工信息
select empno,ename from emp where job = 'manager' and sal > 2500;
⑨or
查询工作岗位是manager和saleman的员工
select empno,ename,job,sal from emp where job = 'manager' or job ='salesman';
⑩and 和 or的优先级(and优先级高于or)
不确定优先级,加’小括号‘
查询工资大于2500并且部门编号为10或20的员工
select * from emp where sal > 2500 and (deptno =10 or deptno =20);
⑩in(包含):相当于多个or
注意:in不是一个区间,是一个具体的值
查询工作岗位是manager和salesman的员工
select * from emp where job in ('manager','salesman');
not in:不在这几个值的数据
select * from emp where job not in ('manager','salesman');