Oracle SQL查询:比较操作符与实战示例

需积分: 0 0 下载量 171 浏览量 更新于2024-07-10 收藏 722KB PPT 举报
本文将深入探讨Oracle数据库中的比较操作符,这是SQL语言的重要组成部分,用于在查询过程中比较数据。比较操作符允许我们根据特定条件筛选出所需的数据,从而更有效地管理和检索信息。 首先,我们来看看一些基本的比较操作符: 1. `=`:等于。例如,`select * from emp where deptno = 10;` 查询部门编号为10的所有员工记录。 2. `!=` 或 `<>`:不等于。如 `select ename, sal from emp where deptno <> 10;` 返回部门编号不是10的员工姓名和薪水。 3. `<`:小于。例如,`select ename, sal from emp where sal < 1500;` 查找薪水低于1500的员工。 4. `>`:大于。如 `select ename, sal from emp where ename > 'CBA';` 按字母顺序查找名字在"CBA"之后的员工。 5. `<=`:小于或等于。例如,`select ename, sal from emp where sal <= 1500;` 找到薪水不超过1500的员工。 6. `>=`:大于或等于。如 `select ename, sal from emp where sal >= 800 and sal <= 1500;` 查询薪水在800到1500之间的员工。 除了这些基本操作符,还有其他高级比较操作符: 7. `BETWEEN…AND`:介于两者之间。例如,`select ename, sal from emp where sal between 800 and 1500;` 等同于上面的查询,找出薪水在800到1500的员工。 8. `IN`:在给定列表内。如 `select ename, sal from emp where sal in(800, 1500, 2000);` 查询薪水是800、1500或2000的员工。 9. `LIKE`:匹配模式。比如,如果我们想找到所有以"C"开头的员工名字,可以使用 `select ename from emp where ename like 'C%';` 10. `IS NULL` 和 `IS NOT NULL`:检查值是否为空。如 `select ename, sal, comm from emp where comm is null;` 查找佣金为空的员工,而 `select ename, sal, comm from emp where comm is not null;` 将找到佣金不为空的员工。 Oracle数据库还涉及到其他重要的概念,如数据类型,这在创建和管理表时至关重要。数据类型决定了列可以存储什么样的数据。例如: - 字符数据类型:包括 `CHAR` 和 `VARCHAR2`。`CHAR` 是固定长度的字符串,而 `VARCHAR2` 是可变长度的字符串,通常更灵活且节省空间。 - 数值数据类型:用于整数和浮点数,如 `NUMBER`。 - 日期时间数据类型:如 `DATE`,用于存储日期和时间信息。 - RAW 和 `LONGRAW`:用于存储原始二进制数据。 - LOB (Large Object) 数据类型:用于存储大量数据,如图像或文档。 SQL语言分为四个主要类别: - 数据定义语言 (DDL):用于创建和修改数据库对象,如 `CREATE`, `ALTER`, 和 `DROP`。 - 数据操纵语言 (DML):处理数据,包括 `INSERT`, `SELECT`, `DELETE`, 和 `UPDATE`。 - 事务控制语言 (TCL):管理数据库事务,如 `COMMIT`, `SAVEPOINT`, 和 `ROLLBACK`。 - 数据控制语言 (DCL):处理数据库权限,如 `GRANT` 和 `REVOKE`。 了解并熟练掌握这些比较操作符和数据类型是Oracle数据库管理的基础,对于有效查询和管理Oracle数据库至关重要。在实际工作中,结合Oracle企业管理器、SQL*Plus和其他工具,可以更高效地与Oracle服务器进行交互,执行复杂的查询和管理任务。