OCP-1Z0-051-V9.02-163题

163. View the Exhibit and examine the description for the CUSTOMERS table.

You want  to update  the CUST_CREDIT_LIMIT column  to NULL for all  the customers, where

CUST_INCOME_LEVEL has NULL in the CUSTOMERS table. Which SQL statement will accomplish the

task?

 

A. UPDATE customers

SET cust_credit_limit = NULL

WHERE CUST_INCOME_LEVEL = NULL; 

B. UPDATE customers

SET cust_credit_limit = NULL

WHERE cust_income_level IS NULL;

C. UPDATE customers

SET cust_credit_limit = TO_NUMBER(NULL)

WHERE cust_income_level = TO_NUMBER(NULL);

D. UPDATE customers

SET cust_credit_limit = TO_NUMBER(' ',9999)

WHERE cust_income_level IS NULL;

Answer: B

答案解析:

参考:http://blog.csdn.net/rlhua/article/details/12885143


题意要求:更新CUSTOMERS表中所有customers的CUST_CREDIT_LIMIT值,当CUST_INCOME_LEVEL为NULL时更新CUST_CREDIT_LIMIT为空。

AC的where条件都为假,所有都不更新。

D的set语句有语法问题,故错误。


 实验验证:

A,

sh@TESTDB> UPDATE customers
  2  SET cust_credit_limit = NULL
  3  WHERE CUST_INCOME_LEVEL = NULL;
 
0 rows updated.

 B,

sh@TESTDB> UPDATE customers
  2  SET cust_credit_limit = NULL
  3  WHERE cust_income_level IS NULL
  4  ;
 
41 rows updated.
 
 C,
sh@TESTDB> UPDATE customers
  2  SET cust_credit_limit = TO_NUMBER(NULL)
  3  WHERE cust_income_level = TO_NUMBER(NULL);
 
0 rows updated.

 

 D,

sh@TESTDB> UPDATE customers
  2  SET cust_credit_limit = TO_NUMBER(' ',9999)
  3  WHERE cust_income_level IS NULL;
SET cust_credit_limit = TO_NUMBER(' ',9999)
                                  *
ERROR at line 2:
ORA-01722: invalid number
原文地址:https://www.cnblogs.com/hzcya1995/p/13316839.html