带有相关查询的Oracle更新

问题描述 投票:0回答:1

正确的答案是什么?选择两个。

检查此SQL语句:

UPDATE orders o
SET customer_name =
(SELECT cust_last_name
FROM customers
WHERE customer_id=o.customer_id);

哪两个是正确的?

A。子查询在执行UPDATE语句之前执行。

B。 ORDERS表中的所有现有行都将更新。

C。对ORDERS表中的每个更新的行执行子查询。

D。即使子查询选择了多行,UPDATE语句也会成功执行。

E。子查询不是相关子查询。

我知道B是正确的,但我认为所有其他选择都不正确。

A。子查询针对外部查询返回的每一行执行,因此它应在外部查询之后执行。

C。不是针对每个更新的行,而是针对外部查询返回的每一行。

D。我试过了。它会导致错误ORA-01427:单行子查询返回的行多]

E。它是一个相关的子查询。

正确的答案是什么?选择两个。检查以下SQL语句:UPDATE订单o SET customer_name =(从客户那里的SELECT cust_last_name,其中customer_id = o.customer_id);哪两个是对的? ...

oracle sql-update correlated-subquery
1个回答
0
投票

考虑选项C:

© www.soinside.com 2019 - 2024. All rights reserved.