oracle中between性能,Oracle中BETWEEN ... AND的作用
在SQL语句中需要选择两个值之间的数据范围时,通常我们会想到BETWEEN ... AND操作符,例如,
SELECT * FROM TABLE WHERE A BETWEEN B AND C;
请问A和B、C这两个边界值的关系是什么?A>B?A>=B?A
不同的数据库,对BETWEEN ... AND操作符的处理,可能存在差异的。有些数据库返回A>B & A=B & A<=C,有的数据库返回A>=B & A
我们看下Oracle中,是如何操作BETWEEN ... AND的。
官方手册上,BETWEEN ... AND定义如下,
expr1 [ NOT ] BETWEEN expr2 AND expr3
其中expr可以是数字、字符、或者日期表达式。如果expr不是相同的类型,则Oracle可能会使用隐式转换。如果是在SQL中,expr1可能会使用多次,如果是在PL/SQL中,expr1只会使用1次。如果expr3
这两种表达,是等价的,
expr1 NOT BETWEEN expr2 AND expr3
NOT (expr1 BETWEEN expr2 AND expr3)
这两种表达,是等价的,expr2 less than or equal to expr1 AND expr1 less than or equal to expr3,其实他就回答了,开头的问题,在Oracle中,A BETWEEN B AND C,表示的是A>=B & A<=C,
expr1 BETWEEN expr2 AND expr3
expr2 <= expr1 AND expr1 <= expr3
我们再从实验,论证一下,
SQL> create table a(id number);
Table created.
SQL> insert into a values(1);
1 row created.
SQL> insert into a values(2);
1 row created.
SQL> insert into a values(3);
1 row created.
SQL> select * from a;
ID
----------
1
2
3
SQL> select * from a where id between 1 and 3;
ID
----------
1
2
3
SQL> select * from a where x between 'a' and 'c';
ID X
---------- -
1 a
2 b
3 c
可以看到,无论是数字,还是使用字符,A BETWEEN B AND C,都等价的是A>=B & A<=C。
若朋友们使用其他的数据库,可以留言告诉我们在不同的数据库中,BETWEEN ... AND都出现怎样不同的现象?
参考:
https://www.w3school.com.cn/sql/sql_between.asp
oracle中between性能,Oracle中BETWEEN ... AND的作用相关推荐
- oracle 查看数据库性能,oracle 11G使用statspack查看数据库的性能
1.安装Statspack工具(statspack工具的脚本在$ORACLE_HOME/rdbms/admin目录下,全是以sp开头的文件) [oracle@oracle ~]$ sqlplus / ...
- oracle提升count性能,Oracle性能优化之COUNT
示例代码 SELECT COUNT(1) INTO l_count FROM gl_je_headers h WHERE h.je_source != '13' AND h.attribute1 != ...
- oracle排序函数性能,oracle排序函数
rank,dense_rank,row_number,以及分组排名partition rank:排名会出现并列第n名,它之后的会跳过空出的名次,例如:1,2,2,4 dense_rank:排名会出现并 ...
- 计算机配置表中的内存是指什么,电脑里的性能选项中,处理器计划和内存使用所写的是什么意思...
电脑里的性能选项中,处理器计划和内存使用所写的是什么意思以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 电脑里的性能选项 ...
- loadrunner录制事件为0_Oracle数据库性能监控|LoadRunner 中配置监控Oracle
Oracle 是目前世界上大型应用系统广泛使用的数据库,Oracle 数据库产品为财富排行榜上的前1000 家公司所采用,许多大型网站也选用了Oracle 系统.Oracle 内部结构比较复杂,如图8 ...
- 性能测试过程中oracle数据库报ORA-27301 ORA-27302错
最近在性能测试过程中发现,发现虚拟用户数上不去,加载到一定的数量应用端就报错,提示连接数据库出错.在测试的过程中查看web容器的线程池 数据源的连接池 都还有空闲,同时查看oracle的v$sessi ...
- 本周4天4场直播,解决你对Oracle的种种疑惑,还有第2期大咖讲坛讨论敏捷开发中的性能质量管控...
1. Oracle 10046 Trace的取得和解析方法 -04.13 本课程以专业 Oracle 数据库技术支持工程师的角度讲解 10046 Trace 的取得和解析方法. 分享大纲: 10046 ...
- oracle 调整shared pool,Oracle性能调整中的Shared pool tunning要点
本文主要简述的是Oracle性能调整中Shared pool tunning要点,Shared pool tunning要点,在Oracle性能调整实际的相关操作中起到不可忽视的作用,以下的文章就是对 ...
- oracle segment io,Oracle I/O性能测试之DBMS_RESOURCE_MANAGER.CALIBRATE_IO篇(持续更新中)...
简介 Oracle 11g数据库中提供了DBMS_RESOURCE_MANAGER.CALIBRATE_IO PL/SQL过程用于对当前数据库实例的I/O性能进行测试. DBMS_RESOURCE_M ...
最新文章
- 凤舞天博客中的一些好的见解
- 盘点Windows10系统的使用小技巧三 —— 虚拟桌面
- linux基础篇-系统中进程相关概念
- pb 窗口数据修改sql_Snowflake将成为在云中变得更好的数据仓库
- 服务器内存升级与oracle 参数调整 实施
- MVC控制器取参数值
- 【路径规划】基于matlab GUI改进的DWA算法机器人动态避障路径规划【含Matlab源码 1271期】
- java代码上传到私服,maven上传源码到私服(示例代码)
- Babylongjs-动画
- 某程序员求助:简历造假,如今面试通过,要坦白吗?
- 基于matlab的汽车牌照识别程序
- 如何通过知识付费盈利,实现内容变现?
- iframe 动态 加载 src
- 编写一个简单Java程序,计算银行年存款的本息
- 服务器的类型包括哪些?
- 校招生向京东发起的“攻势”,做到他这样,你,也可以
- 在Vue-cli脚手架中引入图片最常用的两种方法
- jsp taglib指令_JSP Taglib指令
- 如何关掉计算机进行中的程序,任务管理器进程哪些是可以关闭的【图文教程】...
- java去掉字符串前面的空格
热门文章
- t-SNE:最好的降维方法之一
- 韩老师多目标优化:多目标粒子群算法
- 准备笔记 -- 虚函数
- macw小教程:教你在Mac上登录iOS端游戏,原神ios电脑版教程
- kettle 连接数据库报错 (错误连接数据库 [mysql] : org.pentaho.di.core.exception.KettleDatabaseException: Error occ)
- WEB安全之PHP安全开发 博客系统(二):前台js登陆验证、套用模板主体修改登陆和后台样式
- 数学之路(3)-机器学习(3)-机器学习算法-贝叶斯定理(3)
- 旋转矩阵欧拉角万向锁详解
- 笔记本触摸板失灵修复小技巧_手机屏幕突然失灵怎么办?这几个维修小技巧,一定要知道!...
- 面向对象测试题(含答案和解析)