Oracle之SQL限定查询
2024-09-01 19:00:06
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';
最新文章
- PHP基础知识之函数
- JVM 内存管理机制
- MySQL Plugin &#39;InnoDB&#39; init function returned error
- linux之log_format
- asp.net 父窗体获取子窗体的返回值,可用来对父窗体局部更新
- 必须会的SQL语句(四)删除和更新
- 新手学Android
- (转)《深入理解java虚拟机》学习笔记1——Java内存结构
- 95秀-dialog 进度对话框 实用工具
- aix installp软件包管理工具
- android 卸载程序、清除数据、停止服务用法
- nyoj 韩信点兵
- MariaDB表表达式(2):CTE
- iOS----------学习路线思维导图
- [LeetCode] Short Encoding of Words 单词集的短编码
- Dingo 的安装
- JavaSE回顾及巩固的自学之路(一)——————前言
- JavaBean转xml
- mongoDB如何处理多对多关系
- RSA加密解密及RSA签名和验证及证书