• OCP-1Z0-051-V9.02-165题


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

    You want to update the CUST_INCOME_LEVEL and CUST_CREDIT_LIMIT columns for the customer

    with the CUST_ID 2360. You want the value for the CUST_INCOME_LEVEL to have the same value as

    that of the customer with the CUST_ID 2560 and the CUST_CREDIT_LIMIT to have the same value as

    that of the customer with CUST_ID 2566.

    Which UPDATE statement will accomplish the task?

     

    A. UPDATE customers

    SET cust_income_level = (SELECT cust_income_level                         

    FROM customers                         

    WHERE cust_id = 2560),    

    cust_credit_limit = (SELECT cust_credit_limit                         

    FROM customers                          

    WHERE cust_id = 2566)

    WHERE cust_id=2360;

    B. UPDATE customers

    SET (cust_income_level,cust_credit_limit) = (SELECT                                

    cust_income_level, cust_credit_limit                         

    FROM customers                         

    WHERE cust_id=2560 OR cust_id=2566)

    WHERE cust_id=2360;

    C. UPDATE customers

    SET (cust_income_level,cust_credit_limit) = (SELECT                                

    cust_income_level, cust_credit_limit                         

    FROM customers                          

    WHERE cust_id IN(2560, 2566)

    WHERE cust_id=2360;

    D. UPDATE customers

    SET (cust_income_level,cust_credit_limit) = (SELECT                                

    cust_income_level, cust_credit_limit                         

    FROM customers                          

    WHERE cust_id=2560 AND cust_id=2566)

    WHERE cust_id=2360;

    Answer: A

    答案解析:

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

    BC的子查询返回的是多行,所有报错。

    D的子查询条件不正确,

    题意说:更新CUST_ID为2360的CUST_INCOME_LEVEL和CUST_CREDIT_LIMIT列值。你想让CUST_INCOME_LEVEL的值与CUST_ID为2560的值一样,让CUST_CREDIT_LIMIT的值与CUST_ID为2566的值一样

    按题意,只有A正确。

    实验验证:

    A

    UPDATE customers
      2  SET cust_income_level = (SELECT cust_income_level                        
    FROM customers                        
    WHERE cust_id = 2560),   
    cust_credit_limit = (SELECT cust_credit_limit                        
    FROM customers                        
    WHERE cust_id = 2566)
      8  WHERE cust_id=2360;
     
    1 row updated.

    B

    sh@TESTDB> UPDATE customers
      2  SET (cust_income_level,cust_credit_limit) = (SELECT                               
    cust_income_level, cust_credit_limit                        
    FROM customers                        
    WHERE cust_id=2560 OR cust_id=2566)
      6  WHERE cust_id=2360;
    SET (cust_income_level,cust_credit_limit) = (SELECT
                                                 *
    ERROR at line 2:
    ORA-01427: single-row subquery returns more than one row
     
     
    C
    sh@TESTDB> UPDATE customers
      2  SET (cust_income_level,cust_credit_limit) = (SELECT                               
    cust_income_level, cust_credit_limit                        
    FROM customers                        
    WHERE cust_id IN(2560, 2566)
      6  WHERE cust_id=2360;
    WHERE cust_id=2360
    *
    ERROR at line 6:
    ORA-00907: missing right parenthesis
    缺失右括号
    添加上 右括号也报错误 single-row subquery returns more than one row
     
    sh@TESTDB>  UPDATE customers
      2  SET (cust_income_level,cust_credit_limit) =
      3  (SELECT
      4  cust_income_level, cust_credit_limit FROM customers
      5  WHERE cust_id IN(2560, 2566))
      6   WHERE cust_id=2360;
    (SELECT
    *
    ERROR at line 3:
    ORA-01427: single-row subquery returns more than one row
    D
    sh@TEST0924> UPDATE customers
      2  SET (cust_income_level,cust_credit_limit) = (SELECT
      3  cust_income_level, cust_credit_limit    
      4  FROM customers
      5  WHERE cust_id=2560 AND cust_id=2566)
      6  WHERE cust_id=2360;

    1 row updated.
  • 相关阅读:
    properties文件作用以及在哪些地方用
    UUID.randomUUID().toString() 的作用
    devops简介
    Redis数据库
    锁方面区别
    python如何操作git
    使用django实现websocket
    迁移与备份
    服务端主动给客户端推送消息
    使用vim登录root管理员用户显示su:鉴定故障
  • 原文地址:https://www.cnblogs.com/hzcya1995/p/13316837.html
Copyright © 2020-2023  润新知