Oracle 11g OCP考试题库解析:COALESCE与DECODE函数

需积分: 10 6 下载量 47 浏览量 更新于2024-07-27 收藏 747KB PDF 举报
"这是关于Oracle 11g OCP认证考试题库的一部分,包含了99道题目,主要涉及数据库管理和SQL查询。" 在Oracle 11g的OCP认证考试中,题库通常涵盖了大量的数据库管理和SQL操作的知识点。以下是根据提供的部分题目解析的相关知识点: 1. 关于`COALESCE`函数: `COALESCE`函数在SQL中用于返回第一个非空值。选项C正确,因为它指出所有表达式必须是相同的数据类型。选项A错误,因为实际的`COALESCE`函数可以接受任意数量的参数,而不仅限于五个。选项B不准确,因为它没有提及非空值的要求,并且错误地表示了对所有行的处理。选项D错误,因为`COALESCE`并不强制至少有一个表达式为非空值,而是返回第一个非空值。 2. `DECODE`函数的使用: - A选项正确,它展示了`DECODE`函数与`NVL`函数的结合使用,当`promo_cost`为NULL时,返回`promo_cost*0.25`或100作为"Discount"。 - B选项也正确,它使用嵌套的`DECODE`函数,首先检查`promo_cost`是否等于10000,然后针对'G1'分类应用25%的折扣,如果都不满足,则返回NULL。 - C选项错误,因为在`DECODE(NULLIF(promo_cost,10000),NULL,...)`中,如果`promo_cost`等于10000,`NULLIF`将返回NULL,但之后的`DECODE`没有提供匹配NULL的分支,导致语法错误。 - D选项错误,因为它尝试使用比较运算符(`>`和`<`)作为`DECODE`的条件,这是不合法的。 3. `INSERT`语句与表结构: 这个题目要求在`ORDERS`和`CUSTOMER`表之间插入数据,特别是涉及到具有特定`cust_last_name`值的客户。有效的`INSERT`语句应该基于`ORDERS`和`CUSTOMER`表的结构,以及要插入的数据条件,如`cust_last_name='Roberts'`的特定客户。然而,具体的`INSERT`语句依赖于这些表的具体列和要插入的值,因此无法仅凭给出的信息推断出确切的SQL语句。 以上是Oracle 11g OCP认证题库中关于`COALESCE`和`DECODE`函数使用及`INSERT`语句的基础知识。学习这些概念对于理解Oracle SQL和数据库管理至关重要。考生需要熟悉这些函数的语法和用法,以便在实际操作中有效处理数据。同时,了解如何根据表结构和特定条件编写`INSERT`语句是数据库管理员日常任务的一部分。