WHERE子句

  • 使用WHERE 子句,将不满足条件的行过滤掉。

示例:

SELECT
employee_id,
last_name,
job_id,
department_id
FROM
employees
WHERE
department_id = 90 ;

字符和日期

  • 字符和日期要包含在单引号中。
  • 字符大小写敏感,日期格式敏感。

示例:

SELECT
last_name,
job_id,
department_id
FROM
employees
WHERE
last_name = 'Whalen';

比较运算

操作符   含义
= 等于
> 大于
>= 大于等于
< 小于
<= 小于等于
<> 不等于(也可以是!=)

赋值使用 := 符号

比较运算示例:

SELECT
last_name,
salary
FROM
employees
WHERE
salary <= 3000;

其它比较运算

操作符                     含义
BETWEEN...AND...   在两个值之间 (包含边界)
IN(set)  等于值列表中的一个
LIKE 模糊查询
IS NULL 空值

使用 BETWEEN 运算来显示在一个区间内的值

示例一:

SELECT
last_name,
salary
FROM
employees
WHERE
salary BETWEEN 2500 AND 3500;

使用 IN运算显示列表中的值

SELECT
employee_id,
last_name,
salary,
manager_id
FROM
employees
WHERE
manager_id IN (
100,
101,
201
);

LIKE

  • 使用 LIKE 运算选择类似的值
  • 选择条件可以包含字符或数字:
  • % 代表零个或多个字符(任意个字符)。
  • _ 代表一个字符。

示例:

SELECT
first_name
FROM
employees
WHERE
first_name LIKE 'S%';

‘%’和‘-’同时使用

示例:

SELECT
last_name
FROM
employees
WHERE
last_name LIKE '_o%';

ESCAPE

  • 可以使用 ESCAPE 标识符 选择‘%’和 ‘_’ 符号。
  • 回避特殊符号的:使用转义符。例如:将[%]转为[\%]、[_]转为[\_],然后再加上[ESCAPE ‘\’] 即可。

示例:

SELECT
job_id
FROM
jobs
WHERE
job_id LIKE 'IT\_%' ESCAPE '\';

NULL

  • 使用 IS (NOT) NULL 判断空值。
SELECT
last_name,
manager_id
FROM
employees
WHERE
manager_id IS NULL;

逻辑运算

操作符 含义
AND 逻辑并
OR 逻辑或
NOT 逻辑否

AND

  • AND 要求并的关系为真。

示例:

SELECT
employee_id,
last_name,
job_id,
salary
FROM
employees
WHERE
salary >= 10000
AND job_id LIKE '%MAN%';

OR

  • OR 要求或关系为真。
SELECT
employee_id,
last_name,
job_id,
salary
FROM
employees
WHERE
salary >= 10000
OR job_id LIKE '%MAN%';

NOT

  • NOT 不在这之内
SELECT
last_name,
job_id
FROM
employees
WHERE
job_id NOT IN (
'IT_PROG',
'ST_CLERK',
'SA_REP'
);

优先级

优先级  名称 
1 算术运算符
2 连接符
3 比较符
4 IS [NOT] NULL, LIKE, [NOT] IN
5 [NOT] BETWEEN
6 NOT
7 AND
8 OR
  • 可以使用括号改变优先级顺序

ORDER BY子句

  • 使用 ORDER BY 子句排序
  • ASC(ascend): 升序
  • DESC(descend): 降序
  • ORDER BY 子句在SELECT语句的结尾。

示例:

SELECT
last_name,
job_id,
department_id,
hire_date
FROM
employees
ORDER BY
hire_date;


降序排列

SELECT
last_name,
job_id,
department_id,
hire_date
FROM
employees
ORDER BY
hire_date DESC;

按别名排序:

SELECT
employee_id,
last_name,
salary * 12 annsal
FROM
employees
ORDER BY
annsal;

多个列排序:按照ORDER BY 列表的顺序排序。

SELECT
last_name,
department_id,
salary
FROM
employees
ORDER BY
department_id,
salary DESC;

Oracle系列三 过滤和排序的更多相关文章

  1. Oracle系列(三): 情景查询一 a表中有个fid字段,逗号分隔开来,b表中有id字段及其他信息,如何关联a表的fid和和b表的id字段查询

    现在有两个表,表a中 DOC FID 1 a,b,c 2 a,c,d 表b中 ID KEY a A b B c C d D 怎么联合查询出 DOC FID KEY 1 a,b,c A,B,C 2 a, ...

  2. oracle系列(三)表操作基础

    支持的数据类型: 字符型char 定长 最大2000varchar2() 变长 最大4000clob 字符型大对象 最大4G 数字型number范围 -10的38次方到10的+38次方;number( ...

  3. 《Entity Framework 6 Recipes》中文翻译系列 (27) ------ 第五章 加载实体和导航属性之关联实体过滤、排序、执行聚合操作

    翻译的初衷以及为什么选择<Entity Framework 6 Recipes>来学习,请看本系列开篇 5-9  关联实体过滤和排序 问题 你有一实体的实例,你想加载应用了过滤和排序的相关 ...

  4. Oracle Day2 过滤、排序、单行函数

    1.过滤和排序 SQL> --查询10号部门的所有员工信息 SQL> select * from emp ; 未选定行 SQL> ed SP2: 无法创建保存文件 "afi ...

  5. Web 开发人员和设计师必读文章推荐【系列三十】

    <Web 前端开发精华文章推荐>2014年第9期(总第30期)和大家见面了.梦想天空博客关注 前端开发 技术,分享各类能够提升网站用户体验的优秀 jQuery 插件,展示前沿的 HTML5 ...

  6. .Net程序员学用Oracle系列(11):系统函数(下)

    1.聚合函数 1.1.COUNT 函数 1.2.SUM 函数 1.3.MAX 函数 1.4.MIN 函数 1.5.AVG 函数 2.ROWNUM 函数 2.1.ROWNUM 函数简介 2.2.利用 R ...

  7. .Net程序员学用Oracle系列(15):DUAL、ROWID、NULL

    1.DUAL 表 2.ROWID 类型 2.1.利用 ROWID 查询数据 2.2.利用 ROWID 更新数据 3.NULL 值 3.1.NULL 与空字符串 3.2.NULL 与函数 3.3.NUL ...

  8. .Net程序员学用Oracle系列(30):零碎补充、最后总结(The End)

    1.同义词 2.Flashback 技术 3.连接字符串的写法 4.转义字符 & 特殊运算符 5.文件类型 6.查看参数 & 修改参数 7.AWR 工具 8.学习方法 & 学习 ...

  9. Oracle01——基本查询、过滤和排序、单行函数、多行函数和多表查询

    作者: kent鹏 转载请注明出处: http://www.cnblogs.com/xieyupeng/p/7272236.html Oracle的集群 Oracle的体系结构 SQL> --当 ...

随机推荐

  1. CSS的一个小bug,Gradient has outdated direction syntax. New syntax is like `to left` instead of `right`.

    在vue重新渲染页面的时候,报了一个错误: 翻译了报错信息后,Gradient has outdated direction syntax. New syntax is like to left in ...

  2. 三、Linux_环境变量

    环境变量配置: # 每次进入命令都要重新source /etc/profile 才能生效? # 解决办法:将环境变量放置到~/.bashrc文件中 $ vim ~/.bashrc # 在里面添加相关的 ...

  3. golang面向对象实现

    面向对象编程三大特点:封装.继承.多态. 1. 构造函数 Go不支持构造器.如果某类型的零值不可用,需要提供NewT(parameters)函数,用来初始化T类型的变量.按照Go的惯例,应该把创建T类 ...

  4. ITIL 4Foundation认证

    2019年5月参加了ITIL 4Foundation培训和认证.最新的ITIL4版本中,结合了Lean.Agile和DevOps的思想.经过学习后,在思想上有很大的收货. 在此记录自己的成长.

  5. node基础学习——http基础知识-02-http响应数据流

    <一> 发送服务器端响应流 在createServer()方法的参数值回调函数或服务器对象的request事件函数中的第二个参数值为一个http.ServerResponse对象,可以利用 ...

  6. C# 退出应用程序的几种方法

    Application.Exit();//好像只在主线程可以起作用,而且当有线程,或是阻塞方法的情况下,很容易失灵 this.Close();//只是关闭当前窗体. Application.ExitT ...

  7. Echo团队Alpha冲刺随笔 - 第八天

    项目冲刺情况 进展 程序基本完成,根据实际,添加完善新接口 问题 根据功能对接出现的问题继续进行改进 心得 放假了放松下 今日会议内容 黄少勇 今日进展 测试小程序,添加异常和错误操作的处理 存在问题 ...

  8. Spark API--Spark 分区

    一.分区的概念 分区是RDD内部并行计算的一个计算单元,RDD的数据集在逻辑上被划分为多个分片,每一个分片称为分区,分区的格式决定了并行计算的粒度,而每个分区的数值计算都是在一个任务中进行的,因此任务 ...

  9. BZOJ2159 Crash的文明世界——树上DP&&第二类Stirling数

    题意 给定一个有 $n$ 个结点的树,设 $S(i)$ 为第 $i$ 个结点的“指标值”,定义为 $S(i)=\sum_{i=1}^{n}dist(i,j)^k$,$dist(i, j)$ 为结点 $ ...

  10. 铺砖头问题(完美)——爆搜&&插头DP

    题意 给定一个 $n \times m$ 的格子,每个格子被染成了黑色或白色.现在要用 $1 \times 2$ 的砖块覆盖这些格子,要求块与块之间互不重叠,且覆盖了所有白色的格子,但不覆盖任意黑色格 ...