Oracle(限定查询2)
3.2 对数据进行限定查询
在标准SQL之中定义了许多的运算符。
3.2.1、关系运算符
范例:
范例:
范例:
在使用关系运算符判断字符数据的时候注意大小写的编写问题。因为Oracle是区分大小写的。下面是错误的代码:
SELECT *
FROM emp
WHERE job = 'clerk'
范例:不等于符号(<>、!=)
范例:
范例:
对于这样的操作实际上此时存在两组条件:
- 条件一:10部门的经理
- 条件二:20部门的办事员
这两个条件有一个满足即可,所以这两组条件中间应该使用OR进行连接。
范例:
3.3.2、范围查询
范围查询:BETWEEN 最小值 AND 最大值
语法:字段 | 列 BETWEEN 最小值 AND 最大值
BETWEEN...AND...操作符的主要功能是针对于一个指定的数据范围进行查找,在设置范围的时候,可以是数字,字符串或者是日期型数据。
在这个查询里面使用到hiredate字段。
判断内容是否为null:IS NULL,IS NOT NULL
语法:
判断为NULL:字段 | 值 IS NULL;
判断不为NULL:字段 | 值 IS NOT NULL (NOT 字段 | 值 IS NULL)
不能用等号判断,只能用 is。
现在需要的是两个判断条件,一个是佣金为null,第二个是工资大于2000。
现在要找的是职位,职位会出现重复,重复的数据必须使用DISTINCT消除。
3.2.4、列表范围查找:IN、NOT IN
语法:
- 在指定数据范围内:字段 | 值 IN(值, 值,...)
- 不在指定数据范围内:字段 | 值 NOT IN(值, 值,...)
所谓的列表范围指的是给了用户固定的几个参考值,只要符合这个值就满足条件。
范例:
使用 IN 查询:
SELECT *
FROM emp
WHERE empno IN (7396, 7788, 7566);
但是在使用 NOT IN 操作的时候注意一点,关于 null 的问题。
使用 IN 操作符数据之中包含了null,不会影响查询结果。但是使用NOT IN,里面有null,直接的后果就是没有任何的数据显示。
SELECT *
FROM emp
WHERE empno NOT IN (7396, 7788, null);
这样执行就没有任何结果。
使用NOT IN 或 IN 其目的只是显示部分数据,如果说现在有一列数据不为null,并且NOT IN里面判断 null 的条件满足了,那么就表示的是查询全部数据。
3.2.5、like 模糊查询
语法:
满足模糊查询:字段 | 值 LIKE 匹配标记
不满足模糊查询:字段 | 值NOT LIKE 匹配标记
现在对某一列进行模糊查询,使用 LIKE 子句完成,通过 LIKE 可以进行关键字的模糊查询,在 LIKE 子句中有两个通配符:
- 百分号(%):匹配任意类型和长度的字符,如果是中文则使用两个(%%)
- 下划线(_):匹配单个任意字符,它常用来限制表达式的字符长度
注意一点,在设置模糊查询的时候不设置关键字,就表示查询全部,比如:
SELECT * FROM emp WHERE sal LIKE '%%' OR hiredate LIKE '%%';
相关文章
- oracle层次查询
- 升级_开阔视野之Oracle图形化升级(dbca建库后升级)—10.2.0.1.0升为10.2.0.5.0
- ORACLE查询系统保留关键字及表中是否有关键字
- Oracle数据库:子查询、单行子查询,多行子查询,in,any,all语句,子查询的练习案例
- Oracle数据库:oracle内连接inner join on,多表查询各种自链接、内连接、外连接的练习示例
- [转]Oracle用户表空间临时表空间等查询
- [转]Oracle 查询表外键相关信息
- oracle使用日期
- oracle函数 NLS_UPPER(x[,y])
- 转 MySQL与Oracle 差异比较之一数据类型
- oracle数据库之子查询
- Oracle数据库之单表查询
- oracle 游标(oracle游标查询)
- Oracle 12c新特性:多租户中使用 CONTAINERS 语句跨越PDB查询
- 安装Oracle 10g RAC是否需要安装HACMP
- Oracle数据库 | SQL语句执行计划、语句跟踪与优化实例
- 教你使用Linux系统的Shell脚本维护Oracle
- ORACLE经常使用系统查询
- oracle之ROWNUM的查询应用
- Oracle数据库迁移
- Oracle的层次查询(oracle树查询)
- Oracle问题小记五:服务启动-索引-子查询-分页存储过程
- 折腾Oracle问题小菜记[分页存储过程/查询所有表、视图、存储过程/查询表、视图、存储过程字段结构与参数](三)
- Oracle 基础系列之1.2 oracle的基本使用
- 远程桌面连接:出现身份验证错误,要求的函数不受支持,可能是由于CredSSP加密Oracle修正的解决方法