Oracle SQL查询实用教程

需积分: 9 0 下载量 122 浏览量 更新于2024-07-27 1 收藏 71KB DOC 举报
"Oracle SQL语句学习大全" Oracle SQL是一种用于管理Oracle数据库的强大查询语言,是数据查询、更新和管理的核心工具。以下是一些Oracle SQL的基础语法和常见操作,适用于初学者和有经验的数据库管理员。 1. `DESC` 命令:此命令用于描述(describe)表的结构,包括列名、数据类型、是否允许为空等信息。例如,`DESC emp` 将显示emp表的所有列信息。 2. `SELECT * FROM table`:这是最基本的查询语句,用于获取表中的所有数据。`*` 表示所有列。 3. `DUAL` 表:在Oracle中,`DUAL` 是一个预定义的、只包含一行一列的表,常用于测试SQL语句或获取系统当前日期,如 `SELECT sysdate FROM dual`。 4. 字段别名:通过`AS`或双引号内的别名,可以为查询结果的列设置别名,如 `SELECT ename "年度薪水" FROM emp`,"年度薪水"是salary字段的别名。 5. 数学运算与空值:在Oracle SQL中,任何涉及空值(NULL)的算术运算其结果也为NULL。例如,`SELECT ename, sal*12+comm FROM emp`,如果comm字段是NULL,那么计算后的结果也会是NULL。 6. 字符串连接:使用双竖线 `||` 可以连接字符串,如 `SELECT ename || ' ajjf' FROM emp`,这将把每个员工的名字后面添加' ajjf'。 7. `DISTINCT` 关键字:用于去除查询结果中的重复行,例如 `SELECT DISTINCT deptno FROM emp` 将返回emp表中不同的部门编号。 8. `WHERE` 子句:用于指定查询条件,如 `SELECT * FROM emp WHERE deptno = 10` 会返回部门编号为10的所有员工信息。 9. 比较运算符:`=`, `<>`, `<`, `>`, `<=`, `>=` 等用于比较字段值,如 `SELECT ename FROM emp WHERE ename > 'CBA'` 会返回名字按ASCII码顺序大于'CBA'的员工。 10. `BETWEEN` 运算符:用于查询介于两个值之间的数据,如 `SELECT ename, sal FROM emp WHERE sal BETWEEN 800 AND 1500` 返回薪水在800到1500之间的员工。 11. 单引号转义:在字符串中嵌入单引号时,需要使用两个单引号来表示一个单引号,如 `SELECT ename || 'sakj''lds' FROM emp`。 12. 非等于运算符:`<>` 用于表示不等于,例如 `SELECT ename, sal, deptno FROM emp WHERE deptno <> 10` 会返回部门编号不是10的员工信息。 这些基本的Oracle SQL语句构成了查询和管理Oracle数据库的基础。随着对SQL的深入学习,还可以掌握更复杂的联接(JOIN)、子查询、聚合函数(GROUP BY, HAVING)以及视图(VIEW)等高级概念,以实现更复杂的数据库管理和数据分析任务。