WHERE限定条件

/*
语法结构:
SELECT * | 列名1[,列名2...] | 表达式
FROM 表名
WHERE 限定条件;
*/

--查询职位为CLERK的员工信息
SELECT *
FROM EMP
WHERE JOB = 'CLERK'; --查询薪资大于800小于2500的员工信息
SELECT *
FROM EMP
WHERE SAL > 800 AND SAL < 2500;

关系运算符 < \ > \ = \ >= \ <= \ != \ <>

/*
常见的关系运算有:
运算符 说明
= 等于
<>或者!= 不等于
< 小于
> 大于
<= 小于或者等于
>= 大于或者等于
*/ --查询职位等于CLERK的员工信息
SELECT *
FROM EMP E
WHERE E.JOB = 'CLERK';
逻辑运算符  AND 且 、 OR 或、NOT 非
--查询部门编号为30或者职位为SALESMAN的员工信息
SELECT *
FROM EMP E
WHERE E.DEPTNO = 30 OR E.JOB = 'SALESMAN'; --查询不是30号部门的员工信息
SELECT *
FROM EMP E
WHERE NOT E.DEPTNO = 30;

范围运算符 BETWEEN ... AND...
--查询薪资在[800,2500]之间的员工信息
--方法一:
SELECT *
FROM EMP E
WHERE E.SAL >= 800 AND E.SAL <= 2500; --方法二:
SELECT *
FROM EMP E
WHERE E.SAL BETWEEN 800 AND 2500;

空判断 IS NULL/ IS NOT NULL
--查询员工上级为空的员工信息
SELECT *
FROM EMP E
WHERE E.MGR IS NULL; --查询奖金不为空的员工信息
SELECT *
FROM EMP E
WHERE E.COMM IS NOT NULL; -- 注意:NULL 与任何值进行运算时,结果都为 NULL
SELECT E.SAL 月薪,E.SAL * 12 年薪,E.COMM 奖金,NVL(E.COMM,0),E.SAL * 12 + NVL(E.COMM,0) 年收入
FROM EMP E; --注意:NULL参与排序时,永远是最大的
SELECT *
FROM EMP E
ORDER BY E.COMM DESC;

IN判断:用于在指定的范围内进行数据的查询。 IN / NOT IN
--查询10、20、30号部门的员工信息
SELECT *
FROM EMP E
WHERE E.DEPTNO IN (10,30,20); --查询不在10、30号内的员工信息
SELECT *
FROM EMP E
WHERE E.DEPTNO NOT IN (10,30);

模糊查询: LIKE / NOT LIKE
--'%':通配符,代表任意0、1或者多个字符;
--'_':占位符,代表1个字符。 --查询EMP表中员工姓名首字母为'A'的员工信息
SELECT *
FROM EMP E
WHERE E.ENAME LIKE 'A%'; --查询EMP表中员工姓名第二字母为'A'的员工信息
SELECT *
FROM EMP E
WHERE E.ENAME LIKE '_A%'; --查询EMP表中员工姓名最后一位字母为'S'的员工信息
SELECT *
FROM EMP E
WHERE E.ENAME LIKE '%S';

Oracle之SQL限定查询的更多相关文章

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

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

  2. Oracle数据库——SQL高级查询

    一.涉及内容 1.掌握SELECT语句的多表连接查询. 2.掌握SELECT语句的子查询. 二.具体操作 (一)根据Oracle数据库scott方案下的emp表和dept表,完成下列操作: 1.查询所 ...

  3. Oracle数据库——SQL基本查询

    一.涉及内容 1.掌握SELECT 语句的基本语法. 2.掌握常用函数的使用. 二.具体操作 (一)使用Scott方案下的emp表和dept表,完成以下操作: 1.查询部门编号是20的员工信息. 2. ...

  4. Oracle和SQL server查询数据库中表的创建和最后修改时间

    有时候我们需要查看下数据数据库中表的创建时间和最后修改时间,可以通过以下语句实现: Oracle数据库 -- 查看当前用户下的表 SELECT * FROM USER_TABLES -- 查看数据库中 ...

  5. ORACLE基本SQL语句-查询篇

    一.普通查询 /*查询表数据*/select * from STU /*取出前3行数据*/select * from stu where ROWNUM<=3 /*模糊查询*/select * f ...

  6. Oracle经典SQL

    最近本人整理了一些Oracle sql,现分享给大家,后续还会更新.如果有错误的地方,请指正,共同学习.贴上去的sql都是我测试过的,大家可以粘贴在自己的电脑上试试. 1.查询部门的名称,及最低收入雇 ...

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

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

  8. Oracle(限定查询2)

    3.2 对数据进行限定查询 在标准SQL之中定义了许多的运算符. 3.2.1.关系运算符 范例: 范例: 范例: 在使用关系运算符判断字符数据的时候注意大小写的编写问题.因为Oracle是区分大小写的 ...

  9. Oracle(限定查询1)

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

随机推荐

  1. Python webargs 模块

    一.安装 python3 -m pip install webargs 文档 二.基础特性 # encoding=utf-8 from flask import Flask from webargs ...

  2. gin框架中的中间件

    全局中间件 所有请求都经过此中间件 中间件中设置值 func MiddleWare() gin.HandlerFunc { return func(context *gin.Context) { t ...

  3. Java 实现订单未支付超时自动取消

    在电商上购买商品后,如果在下单而又没有支付的情况下,一般提示30分钟完成支付,否则订单自动.比如在京东下单为完成支付: 超过24小时,就会自动取消订单,下面使用 Java 定时器实现超时取消订单功能. ...

  4. vivo数据库与存储平台的建设和探索

    本文根据Xiao Bo老师在"2021 vivo开发者大会"现场演讲内容整理而成.公众号回复[2021VDC]获取互联网技术分会场议题相关资料. 一.数据库与存储平台建设背景 以史 ...

  5. python 裴伯拉切数列

    裴伯拉切数列:从第三个元素开始,每个元素为该元素前面的两个元素的和. 裴伯拉切数列:0,1,1,2,3,5,8,13,21,34,55...... 求出小于n的裴伯拉切数列. def fibo(n): ...

  6. pandas目录

    pandas目录 1 Lesson1--Pandas是什么 2 Lesson2--Pandas库下载和安装 3 Lesson3--Pandas Series结构 4 Lesson4--Pandas D ...

  7. 【源码】Redis exists命令bug分析

    本文基于社区版Redis 4.0.8 1.复现条件 版本:社区版Redis 4.0.10以下版本 使用场景:开启读写分离的主从架构或者集群架构(master只负责写流量,slave负责读流量) 案例: ...

  8. AT2395 [ARC071C] TrBBnsformBBtion

    基于观察,可以发现以下两条性质: A 可以到 BB,BB 也可以到 A,对 B <-> AA 也是同理的. 可以通过这两个操作交换相邻元素. 对于前者,只需证明 BB 可以到 A 即可,不 ...

  9. 生成"cmd.exe"错误

    转载请注明来源:https://www.cnblogs.com/hookjc/ 在VC2005里打开"工具"菜单,选择"选项",打开"选项" ...

  10. HTTP消息头(HTTP headers)-HTTP请求头与HTTP响应头

    感谢大佬:https://itbilu.com/other/relate/E1T0q4EIe.html HTTP协议将传输的信息分隔为两部分:HTTP信息头.HTTP信息体.通过HTTP头信息,使客户 ...