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. java中的关键字、保留字、标识符

    Java关键字(KeyWord):  对Java的编译器有特殊的意义,他们用来表示一种数据类型或者表示程序的结构. Java保留字(Reserved Word):为Java预留的关键字,现在还没有用到 ...

  2. Docker学习笔记之docker-save vs docker-export vs docker-commit

    之前对这几个command是忘了记,记了混-所以写下笔记以巩固之. 1.docker save docker save -h Usage: docker save [OPTIONS] IMAGE [I ...

  3. Docker学习笔记之搭建 Java Web 项目运行环境

    0x00 概述 Java Web 泛指以 Java 程序为基础向外提供 Web 服务的技术及相关工具,狭义上来说,我们也可以说 Java Web 是由 Servlet 程序提供的 Web 服务. 对我 ...

  4. Java中五种遍历HashMap的方式

    import java.util.HashMap; import java.util.Iterator; import java.util.Map; public class Java8Templat ...

  5. runtime.Gosched()的作用分析

    untime.Gosched()用于让出CPU时间片.这就像跑接力赛,A跑了一会碰到代码runtime.Gosched()就把接力棒交给B了,A歇着了,B继续跑 测试代码: package main ...

  6. 最菜的小鸟(mkdir -pv)

    命令 mkdir -pv /usr/local/modules/{openjdk,nginx,tomcat,mariadb}/{manifests,files,templates,lib,tests, ...

  7. Linux模拟僵尸进程并kill

    模拟系统有僵尸进程后怎么解决 僵尸进程 #include <stdio.h> #include <sys/types.h> int main() { //fork a chil ...

  8. [c/c++] programming之路(1)、编写程序打开记事本、计算器等

    一.命令行启动程序 通过命令行关闭程序:taskkill /f /im 程序名.exe 二.打开记事本.计算器 #include <stdlib.h> void main(){ syste ...

  9. Centos 7 安装 Supervisor 及使用

    Supervisor官网链接:http://supervisord.org/installing.html 安装与设置开机启动: http://blog.csdn.net/fenglailea/art ...

  10. NOI 2007 货币兑换Cash (bzoj 1492) - 斜率优化 - 动态规划 - CDQ分治

    Description 小Y最近在一家金券交易所工作.该金券交易所只发行交易两种金券:A纪念券(以下简称A券)和 B纪念券(以下 简称B券).每个持有金券的顾客都有一个自己的帐户.金券的数目可以是一个 ...