oracle数据库
二、条件查询
二 、条件查询
条件查询的七种情况:
1、逻辑运算
2、模糊查询
3、包含查询
4、范围查询
5、NULL值判断
6、ANY和ALL
7、布尔连接
条件查询语法:
SELECT COL_NAME1,COL_NAME2
FROM TB_NAME
WHERE CONDITION ;
语法解释:
从数据源TB_NAME中,按条件CONDITION进行数据筛选,从条件成立的数据中查找COL_NAME1,COL_NAME2,…列的数据。
CONDITION:条件。条件成立,则输出结果,条件不成立,则过滤掉该条数据。
SELECT子句影响列数,WHERE子句影响行数
1、逻辑运算
语法格式:
SELECT COL_LIST FROM TB_NAME WHERE COL_NAME1 = VALUE|COL_NAME2|EXPR;
逻辑运算符:= > < >= <= <> !=
--非相关条件
SELECT * FROM EMP WHERE 1=1; --恒成立
SELECT * FROM EMP WHERE 1=0; --恒不成立
--相关条件:条件与数据源有关系,条件中出现了来自数据源的字段
--非相关条件:条件与数据源没有关系
注意点:
- 空值NULL不参与运算比较
- 空值NULL做任何比较得到的结果都是不成立
--NVL(被处理的列,遇空的处理) --将空值处理成指定内容
举例:
SELECT ENAME,SAL,COMM,NVL(COMM,0) FROM EMP;
SELECT ENAME,SAL,COMM,NVL(COMM,0),SAL+NVL(COMM,0) FROM EMP;
(3)区分数值型数据、字符型数据、日期型数据
数值型:单纯的数值上的比较判断
字符型:转换成ASCII码,通过ASCII码的数值来比较判断
日期型:根据日期早晚进行比较判断
--字符型:差一个字母差一个符号都不行,数据严格区分大小写,代码不区分
函数拓展:
字符串转日期:TO_DATE('字符串',&#