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)的更多相关文章

  1. Oracle(限定查询1)

    3.1.认识限定查询 例如:如果一张表中有100w条数据,一旦执行了“SELECT * FROM 表”语句之后,则将在屏幕上显示表中的全部数据行的记录,这样即不方便浏览,也有可能造成死机的问题出现,所 ...

  2. Oracle笔记(1) 简单查询、限定查询、数据的排序

    Oracle笔记(四) 简单查询.限定查询.数据的排序   一.简单查询 SQL(Structured Query Language) 结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及 ...

  3. Oracle从入门到精通 限定查询和排序查询的问题

    视频课程:李兴华 Oracle从入门到精通视频课程 学习者:阳光罗诺 视频来源:51CTO学院 知识点 SQL语句的执行顺序 限定符号的使用.   具体内容: 如果想要对所选择的数据进行控制,就可以使 ...

  4. Oracle记录(四) 简单查询、限定查询、数据的排序

    一.简单查询 SQL(Structured Query Language) 结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询.更新和管理关系数据库系统.ANSI(美国国家标准学会) ...

  5. Oracle数据库之五 限定查询和排序显示

    五.限定查询和排序显示 5.1.限定查询 5.1.1 认识限定查询 例如:如果一张表中有 100w 条数据,一旦执行了 " SELECT * FROM 表 " 语句之后,则将在屏幕 ...

  6. Oracle笔记(四) 简单查询、限定查询、数据的排序

    一.简单查询 SQL(Structured Query Language) 结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询.更新和管理关系数据库系统.ANSI(美国国家标准学会) ...

  7. 工作中遇到的oracle分页查询问题及多表查询相关

    在工作中,有时,我们会用到oracle分页查询.这时,就需要先了解oracle的rownum.rowmun是oracle的伪列,只能用符号(<.<=.!=),而不能用这些符号(>,& ...

  8. Oracle 复杂查询(1)

    一.复杂查询 1. 列出至少有一个员工的所有部门编号.名称,并统计出这些部门的平均工资.最低工资.最高工资. 1.确定所需要的数据表: emp表:可以查询出员工的数量: dept表:部门名称: emp ...

  9. 带您了解Oracle层次查询

    http://database.51cto.com/art/201010/231539.htm Oracle层次查询(connect by )是结构化查询中用到的,下面就为您介绍Oracle层次查询的 ...

随机推荐

  1. django框架基本介绍

    一.mvc和mtv 1.mvc介绍 MVC,全名是Model View Controller,是软件工程中的一种软件架构模式,把软件系统分为三个基本部分:模型(Model).视图(View)和控制器( ...

  2. QT多线程简单例子

    在Qt中实现多线程,除了使用全局变量.还可以使用信号/槽机制. 以下例子使用信号/槽机制. 功能: 在主线程A界面上点击按钮,然后对应开起一个线程B.线程B往线程A发送一个字符串,线程A打印出来. 1 ...

  3. linux下nginx编译安装

    步骤: 1.获取nginx安装包. 进入nginx官网:http://nginx.org/ 找到稳定版本: 点击红框内的链接. 使用wget获取安装包. wget http://nginx.org/d ...

  4. EDK II之USB设备驱动程序的加载与运行

    本文简单介绍一下USB设备的驱动程序是如何匹配设备以及被加载的: 上文(UDK中USB总线驱动的实现框架)提到USB总线枚举设备的最后一步是调用gBS->ConnectController()去 ...

  5. thinkphp 开启事物

    $Member->startTrans();//启动事务 // 提交事务$ Member->commit(); // 事务回滚$Member ->rollback();

  6. 详解centos6和centos7防火墙

    CentOS6.5查看防火墙的状态: ? 1 [zh@localhost ~]$service iptable status 显示结果: ? 1 2 3 4 5 6 7 8 9 [zh@localho ...

  7. be动词

    编辑 讨论 be动词,意思和用法很多,一般的意思是:是,此种用法,有多种变化形式,is,am,are,was,were,being,been,to be.另外,be动词还有成为的意思.根据句子中不同的 ...

  8. Docker基础学习-尚硅谷

    视频地址:链接: https://pan.baidu.com/s/15sJuEh5cVTJ7-vWSH7vffw 提取码: zf25 笔记:

  9. Bootstrap3基础 nav 便签页(横版、竖版)

      内容 参数   OS   Windows 10 x64   browser   Firefox 65.0.2   framework     Bootstrap 3.3.7   editor    ...

  10. extjs的使用笔记2

    系统的大部分资源(安装程序的除bin, lib, conf等之外的东西)都是放在 /usr/share/目录中的 在用户自己定义的, 一些关于系统资源的东西, 则放在目录 ~/.local/share ...