条件查询

来源:互联网 发布:天猫 淘宝 区别 编辑:程序博客网 时间:2024/05/15 12:59

条件查询

SELECT       *|{[DISTINCT] column|expression [alias],...}

FROM        table

[WHERE     condition(s)];

Condition(s)要使用到比较运算符常用的比较运算符如下:

操作符

含义

=

等于

大于

>=

大于等于

小于

<=

小于等于

<> 

不等于 等效于!=

其它操作

And 逻辑运算  逻辑与

Or  逻辑运算  逻辑或

Not 逻辑运算  逻辑否

Between 起始值 and 结束值:使用 BETWEEN 运算来显示在一个区间内的值 包含(起始结束值)

In: 使用 IN运算显示列表中的值。 In(,,,)相当于一个集合,只要出现集合中匹配的就显示

Like

l       使用 LIKE 运算选择类似的值

l       选择条件可以包含字符或数字:

         % 代表零个或多个字符(任意个字符)

         _ 代表一个字符。

Escape

   回避特殊符号的:使用转义符。例如:将[%]转为[/%][_]转为[/_],然后再加上[ESCAPE ‘/’] 即可

Null:

使用 IS (NOT) NULL 判断空值。

 

//查询部门号为10的员工信息  部门为整数类型

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp wheredeptno=10;

//查询职位号为MANAGER的员工信息  岗位的类型为字符类型

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp wherejob='MANAGER';

//查询部门号为10并且员工的职位为MANAGER的员工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp wherejob='MANAGER' and deptno=10;

注意:

l       字符和日期要包含在单引号中

l       字符大小写敏感,日期格式敏感

l       默认的日期格式是 DD-MON-RR

//查询部门号大于10的员工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp wheredeptno>10;

//查询薪水大于等于3000的员工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp wheresal>=3000;

//查询薪水不等于3000的员工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp wheresal<>3000;

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp wheresal !=3000;

//查询薪水大于2000并且小于3000的员工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp wheresal>2000 and sal<3000;

//查询薪水大于等于2000并且小于等于3000的员工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp wheresal between 1600 and 3000;

//等效于

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp wheresal>=1600 and sal<=3000;

//查询部门号位1020的员工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp wheredeptno in(10,20);

//注意:相当于如下操作:

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp wheredeptno =10 or deptno=20;

//查询员工名称以S开头的员工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp whereename like 'S%';

//查询员工名称以S结尾的员工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp whereename like '%S';

//查询员工名称第三个字符为N的员工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp whereename like '__N%';

//查询员工名称中含有N的员工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp whereename like '%N%';

//查询员工名称中倒数第二个字符为%的员工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp whereename like '%/%_'escape'/';

//查询员工名称总含有%的员工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp whereename like '%/%%'escape'/';

//查询奖金为null的员工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp wherecomm is null;

//查询奖金非null的员工信息

SQL> select empno,ename,job,mgr,hiredate,sal,comm,deptno from emp wherecomm is not null;

优先级表格:

优先级

 

1

算术运算

2

连接符

3

比较符

4

Is not null like not in

5

Not between

6

not

7

and

8

Or

备注:可以采用括号改变优先级

 

   关系数据库-à层次关系à网状的关系-à关系数据库-à对象关系。

 

 

原创粉丝点击