oracle between、 all、 in 和 exists的区别,模糊查询、4个正则表达式
--条件比较
/*
=,!=,<>,<,>,<=,>=,
any,some,all
is null,is not null
between x and y
in(list),not in(list)
exists(sub-query)
like _ ,%,escape ‘\‘ _\% escape ‘\’
*/ --any some 只要满足其中的任何一个即可
SELECT E.ENAME ,E.JOB,E.SAL FROM EMP E WHERE E.SAL > ANY(1000,2000,3000)
SELECT E.ENAME ,E.JOB,E.SAL FROM EMP E WHERE E.SAL > SOME(1000,2000,3000) --all 满足所有的
SELECT E.ENAME ,E.JOB,E.SAL FROM EMP E WHERE E.SAL < ALL(1000,2000,3000)
SELECT E.ENAME ,E.JOB,E.SAL FROM EMP E WHERE E.SAL > ALL(1000,2000,3000) --判断是否为null不能用"="
SELECT E.* FROM EMP E WHERE E.COMM=NULL; --无数据
SELECT E.* FROM EMP E WHERE NULL=NULL --无数据
SELECT E.* FROM EMP E WHERE E.COMM IS NULL;
SELECT E.* FROM EMP E WHERE E.COMM IS NOT NULL; --and=与、or=或、between and 在两者之间
SELECT T.* FROM T_THREE_KILLED T WHERE T.C_AGE >= 30 AND T.C_SEX = '男';
SELECT T.* FROM T_THREE_KILLED T WHERE T.C_AGE = 30 OR T.C_AGE = 31;
SELECT T.* FROM T_THREE_KILLED T WHERE T.C_AGE BETWEEN 27 AND 33; --IN EXISTS 的区别
--IN会遍历表表中所有数据与条件进行匹配,所有当子查询数据较多时使用IN会使查询效率较低
SELECT T.*
FROM T_THREE_KILLED T
WHERE T.C_AGE IN
(SELECT R.C_AGE FROM T_THREE_KILLED R WHERE R.C_AGE BETWEEN 30 AND 33); --EXISTS 只要查询语句可以返回一条数据则整个表达式为true,适用于子查询数据较多
SELECT T.*
FROM T_THREE_KILLED T
WHERE EXISTS (SELECT R.C_AGE
FROM T_THREE_KILLED R
WHERE T.C_AGE = R.C_AGE
AND R.C_AGE BETWEEN 30 AND 33); --LIKE模糊查询 ESCAPE 转义符
--在模式中,当转义符置于通配符之前时,该通配符就解释为普通字符
SELECT T.* FROM T_THREE_KILLED T WHERE T.C_NAME LIKE '%l\%%' escape('\'); --ORACLE中的支持正则表达式的函数主要有下面四个:
--REGEXP_LIKE :与LIKE的功能相似
--REGEXP_INSTR :与INSTR的功能相似
--REGEXP_SUBSTR :与SUBSTR的功能相似
--REGEXP_REPLACE :与REPLACE的功能相似
oracle between、 all、 in 和 exists的区别,模糊查询、4个正则表达式的更多相关文章
- 使用Oracle的instr函数与索引配合提高模糊查询的效率
使用Oracle的instr函数与索引配合提高模糊查询的效率 一般来说,在Oracle数据库中,我们对tb表的name字段进行模糊查询会采用下面两种方式:1.select * from tb wher ...
- 【SQL】查询语句中in和exists的区别
in in可以分为三类: 一. 形如select * from t1 where f1 in ( &apos:a &apos:, &apos:b &apos:),应该和 ...
- [转]ORACLE中Like与Instr模糊查询性能大比拼
instr(title,'手册')>0 相当于 title like '%手册%' instr(title,'手册')=1 相当于 title like '手册%' instr(titl ...
- Oracle 模糊查询 优化
模糊查询是数据库查询中经常用到的,一般常用的格式如下: (1)字段 like '%关键字%' 字段包含"关键字"的记录 即使在目标字段建立索引也不会走索引,速度最慢 (2 ...
- oracle 子查询详解 in和exists的区别
sql允许多层嵌套,子查询是嵌套在其他查询中的查询.我们可以把子查询当做一张表来看到,即外层语句可以把内嵌的查询结果当做一张表使用. 子查询查询结果有三种情况 不返回查询记录.若子查询不返回记录则主查 ...
- Oracle中执行存储过程call和exec区别
Oracle中执行存储过程call和exec区别 在sqlplus中这两种方法都可以使用: exec pro_name(参数1..); call pro_name(参数1..); 区别: 1. 但是e ...
- 转【】浅谈sql中的in与not in,exists与not exists的区别_
浅谈sql中的in与not in,exists与not exists的区别 1.in和exists in是把外表和内表作hash连接,而exists是对外表作loop循环,每次loop循环再对内表 ...
- oracle唯一索引与普通索引的区别和联系以及using index用法
oracle唯一索引与普通索引的区别和联系 区别:唯一索引unique index和一般索引normal index最大的差异是在索引列上增加一层唯一约束.添加唯一索引的数据列可以为空,但是只要尊在数 ...
- 浅谈sql中的in与not in,exists与not exists的区别
转 浅谈sql中的in与not in,exists与not exists的区别 12月12日北京OSC源创会 —— 开源技术的年终盛典 » sql exists in 1.in和exists ...
随机推荐
- (转)Linux-epoll
在Linux网络编程中,Linux内核2.6版本之前大多都是用 select() 作为非阻塞的事件触发模型,但是效率低,使用受限已经很明显的暴露了select()(包括poll)的缺陷,为了解决这些缺 ...
- 160719、Spring + Dubbo + zookeeper (linux) 框架搭建
转载一篇博客,写得不错(至少我参考一下搭建成功了) 转载地址:http://my.oschina.net/wangt10/blog/522799 dubbo简介 节点角色说明: Provider: 暴 ...
- orchestrator-Raft集群部署
本文简要说明下orchestrator的Raft集群部署,其实部署很简单主要是好好研究下配置文件的配置,这里我的样例配置文件暂时只适用于我们这块业务 如果您自己使用请根据情况自行修改. 主要通过配置文 ...
- LCS/LIS/LCIS 模板总结
/************************* LCS/LIS/LCIs模板总结: *************************/ /*************************** ...
- office 2010 自动连接网络打印机的问题(保存或者打开极慢) 解决方法
将默认打印机设为本地打印机或 Microsoft XPS Document Writer
- 被Chrome下的remove闪了一下腰
有用户反映说购物车删除不了东西,于是有了下面的测试. 浏览器:ie7 ie8 ie9 chrome 代码: <a href="javascript:" onclick=&qu ...
- Numba makes Python code fast
Numba: A High Performance Python Compiler http://numba.pydata.org/ 一行代码让python的运行速度提高100倍,你信吗?-聚能聊-云 ...
- DHTML 简介
DHTML, 动态的 html, 不是一门语言, 是多项技术综合体的简称.其中包括了 html, CSS, DOM, javascript. HTML : 负责提供标签, 对数据进行封装,目的是便于对 ...
- CentOS7保留默认Python版本并安装更新Python2和Python3共存
CentOS 7 默认的python版本是python2.7.5.因为yum依赖于默认的python版本的缘由,所以要先保留默认版本,并修改yum文件头部后,才能开始安装更新python2和pytho ...
- elastic search 查询语句
部署了半个月,分析一下数据: 需要提前知道的是,tpot中,每天的数据存一个index,然后每个index里面有不同的type,每条请求一个document 共24万条请求: 查看整个集群所有数据 以 ...