Oracle数据库基础:SQL select语句详解与过滤排序

需积分: 12 1 下载量 80 浏览量 更新于2024-07-27 收藏 57KB DOCX 举报
本篇文档是对Oracle数据库基本操作中的SELECT语句进行总结,涵盖了SQL结构化查询的基本语法和常用功能。以下是主要内容的详细解析: 1. **基本查询语法**: - `SELECT * FROM emp;`:此语句用于获取表`emp`中的所有列和行。星号(*)代表选择所有列。 - `SELECT empno, ename FROM emp;`:指定选择`empno`和`ename`这两列。 - `SELECT empno, sal AS 'mysal' FROM emp;`:列名可以重命名,使用AS关键字为`sal`列指定新的别名'mysal'。 - `SELECT '编号为' || empno || '的工资为' || sal || ',10年的收入为' || (sal * 13) * 10 FROM emp;`:使用||操作符连接字符串,创建包含计算结果的表达式。 2. **过滤和排序**: - `SELECT * FROM emp WHERE deptno = 20;`:通过WHERE子句筛选部门编号为20的员工。 - `SELECT DISTINCT JOB FROM emp WHERE JOB = 'CLERK';`:使用DISTINCT关键字过滤出`JOB`列中的唯一值(即不重复的Clerk记录)。 - `SELECT * FROM emp WHERE SAL != 800;`:排除SAL字段等于800的记录。 - `SELECT * FROM emp WHERE SAL BETWEEN 800 AND 2500;`:范围查询,返回SAL在800到2500之间的记录。 - `SELECT * FROM emp WHERE ENAME LIKE '%A%N%;`:模糊查询,匹配名字中含有'A'和'N'的记录,且'A'在'N'之前。 - `SELECT * FROM emp WHERE ENAME LIKE '__M%;`:两跳匹配,查询名字中第三个字母为'M'的记录。 3. **其他注意事项**: - `AS`关键字用于别名可以省略,如`SELECT empno, sal, deptno "部门编号" FROM emp;`。 - 使用双引号(`""`)对特殊字符串进行引用,如`"worker'sname"`。 - `IN`关键字用于选择一个值集中的值,如`SELECT * FROM emp WHERE empno IN (7521, 7900, 7876);`。 总结来说,本篇文档详尽介绍了Oracle数据库中基本的SELECT语句,包括全选、指定列、列名重命名、字符串连接、过滤和排序等操作。这对于学习和理解数据库查询语句的基础知识至关重要。在实际应用中,根据具体需求灵活运用这些语法,能够高效地从大量数据中提取所需信息。