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(限定查询2)的更多相关文章
- Oracle(限定查询1)
3.1.认识限定查询 例如:如果一张表中有100w条数据,一旦执行了“SELECT * FROM 表”语句之后,则将在屏幕上显示表中的全部数据行的记录,这样即不方便浏览,也有可能造成死机的问题出现,所 ...
- Oracle笔记(1) 简单查询、限定查询、数据的排序
Oracle笔记(四) 简单查询.限定查询.数据的排序 一.简单查询 SQL(Structured Query Language) 结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及 ...
- Oracle从入门到精通 限定查询和排序查询的问题
视频课程:李兴华 Oracle从入门到精通视频课程 学习者:阳光罗诺 视频来源:51CTO学院 知识点 SQL语句的执行顺序 限定符号的使用. 具体内容: 如果想要对所选择的数据进行控制,就可以使 ...
- Oracle记录(四) 简单查询、限定查询、数据的排序
一.简单查询 SQL(Structured Query Language) 结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询.更新和管理关系数据库系统.ANSI(美国国家标准学会) ...
- Oracle数据库之五 限定查询和排序显示
五.限定查询和排序显示 5.1.限定查询 5.1.1 认识限定查询 例如:如果一张表中有 100w 条数据,一旦执行了 " SELECT * FROM 表 " 语句之后,则将在屏幕 ...
- Oracle笔记(四) 简单查询、限定查询、数据的排序
一.简单查询 SQL(Structured Query Language) 结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询.更新和管理关系数据库系统.ANSI(美国国家标准学会) ...
- 工作中遇到的oracle分页查询问题及多表查询相关
在工作中,有时,我们会用到oracle分页查询.这时,就需要先了解oracle的rownum.rowmun是oracle的伪列,只能用符号(<.<=.!=),而不能用这些符号(>,& ...
- Oracle 复杂查询(1)
一.复杂查询 1. 列出至少有一个员工的所有部门编号.名称,并统计出这些部门的平均工资.最低工资.最高工资. 1.确定所需要的数据表: emp表:可以查询出员工的数量: dept表:部门名称: emp ...
- 带您了解Oracle层次查询
http://database.51cto.com/art/201010/231539.htm Oracle层次查询(connect by )是结构化查询中用到的,下面就为您介绍Oracle层次查询的 ...
随机推荐
- Kattis之旅——Rational Arithmetic
Input The first line of input contains one integer, giving the number of operations to perform. Then ...
- 在Vmware中安装CentOS7
想要安装linux系统,在电脑上先装一个虚拟机,当然装双系统也是可以的.首先准备材料,3步:1.从CentOS的官网上下载CentOS7,DVD ISO版本,大概4G左右.名称:CentOS-7-x8 ...
- 树莓派无显示器开启ssh的方法
在boot根目录新建一个名为 ssh 的空文件即可. boot目录所在分区是fat32格式,可以被windows识别和操作 带有系统的tf卡(或SD卡)插入读卡器中,新建ssh文件即可,注意无后缀名
- C#.Net环境下的缓存技术
转载:https://www.cnblogs.com/lvjy-net/p/8297679.html 一.缓存技术本节将介绍以下技术: 使用Asp.Net缓存: 使用Remoting Singleto ...
- 【Logstash系列】使用Logstash作为收集端采集IIS日志
现阶段Logstash在Windows端的日志采集一直存在若干问题,包括: 1. LS有读锁:进程开启后Input指定路径下的所有文件都会被锁死无法重命名或删除. 2. LS不识别*:如果在pat ...
- vscode中live server插件的Go Live不显示问题
vscode 的 live server 插件是一个很好用的插件,它会帮使用者自动开启一个服务器,保存的时候便自动刷新浏览器页面 安装完便在 vscode 右下方显示如图 Go Live 字样,点击便 ...
- JAVA中拆箱和装箱
浅谈JAVA中拆箱与装箱 一. 什么是装箱?什么是拆箱? 在Java SE5之前,如果要生成一个数值为10的Integer对象,必须这样进行: Integer i = new Integer(10) ...
- PT,PX,DPI
[iOS]查找数组NSArray中是否包含指定的元素 http://blog.csdn.net/zyq527758142/article/details/51278172 Dpi(每平方英寸像素数目) ...
- linux远程方式,以及基础命令
最近准备学习linux系统,购买了阿里巴巴的云服务器,系统为CentOS. 一.连接实例 1.使用管理终端. 这是阿里巴巴云服务器管理控制台,需要登录阿里巴巴,找到自己实例后,点击右侧远程连接即刻. ...
- 小白学习 Redis 数据库日记(2017-06-13)
redis 127.0.0.1:6379> LPUSH runoobkey redis(integer) 1redis 127.0.0.1:6379> LPUSH runoobkey mo ...