Oracle 11g SQL基础:查询与NULL值处理

需积分: 10 16 下载量 2 浏览量 更新于2024-08-15 收藏 1.96MB PPT 举报
"该资源是一份关于Oracle 11g SQL基础的PPT,由boobooke小布制作。主要内容涵盖了SQL语言的基本概念、类型、查询数据、处理NULL值以及定义列别名等核心知识点。" 在Oracle 11g数据库中,SQL(Structured Query Language)是用于操作关系型数据库的标准语言,它主要分为五个类别:查询(QUERY)、数据处理(DML)、数据定义(DDL)、事务控制(TC)和数据控制(DCL)。查询涉及SELECT语句,数据处理包括INSERT、UPDATE和DELETE,数据定义则涵盖CREATE、ALTER、DROP、RENAME和TRUNCATE等操作,事务控制涉及COMMIT、ROLLBACK和SAVEPOINT,而数据控制用于权限管理如GRANT和REVOKE。 在SQL查询中,SELECT语句是最常用的一种,用于从数据库中获取数据。基本结构为`SELECT [DISTINCT] column|expression [alias] FROM table`,`SELECT *`表示选取所有列,`DISTINCT`用于去除重复行。`FROM`后面跟的是要查询的表名。例如,`SELECT department_id, location_id FROM departments`将选取`departments`表中的`department_id`和`location_id`两列。 对于多表查询,可以使用联合操作,如JOIN,将不同表的数据结合在一起。在处理NULL值时,有特定的函数来处理这种情况,如NVL、NVL2、NULLIF和COALESCE。NVL函数用于替换NULL,如果expr1为NULL,则返回expr2的值。NVL2在expr1不为NULL时返回expr2,为NULL时返回expr3。NULLIF若expr1等于expr2,则返回NULL,否则返回expr1。COALESCE则会返回expr1至exprn中第一个非NULL的值。 在SELECT语句中进行四则运算时,需要注意NULL值的处理,因为任何与NULL的运算结果都是NULL。此外,为了提高可读性和理解性,可以使用列别名(ColumnAlias)重命名列,例如`SELECT last_name AS "员工姓名", salary AS "薪水"`,别名可以改善输出的可理解性。如果别名包含特殊字符或需要区分大小写,需使用双引号括起。 在实际应用中,SQL语句通常会在编程语言如C++中作为字符串嵌入,或通过JDBC在Java程序中执行。此外,还可以使用专门的数据库交互工具,如Oracle的SQL*Plus或SQL Developer等来直接运行SQL语句。SQL语句的书写规则需要注意大小写不敏感,关键字不能缩写且不应跨行,一般每个子句另起一行以增强可读性,并以分号结束。