gpt4 book ai didi

sql - 通过另一表中的列更新一个表中的列

转载 作者:行者123 更新时间:2023-12-04 16:46:18 24 4
gpt4 key购买 nike

我有 2 个表“A”和“B”。两者都有一个共同的列“名称”,并通过列“id”相互链接。表 A 中的“名称”列是空的,而表 B 中有数据。我的任务是用相应的 id 填充从表 B 到表 A 的该列中的所有数据。

我正在使用以下查询:

UPDATE A
SET A.name = (SELECT B.name from B WHERE A.id = B.id)
WHERE EXISTS
(SELECT B.name from B)

一旦我在 SQL 开发人员中运行查询,它就会卡住,我必须强制关闭它。谁能告诉我查询有什么问题?

最佳答案

试试这个:

UPDATE A
SET A.name = (SELECT B.name FROM B WHERE B.id = A.id AND B.name IS NOT NULL)
WHERE a.name IS NULL;

由于您使用的是 Oracle,这里是 IS NOT NULL 的引用.

这是 SQL Fiddle,您可以使用它: http://sqlfiddle.com/#!4/a5ad0/3

关于sql - 通过另一表中的列更新一个表中的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12267329/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com