我正在使用DataGrip,并且具有一个包含2个表的Oracle SQL数据库。
我正在尝试使用来自另一个表的vlookup /外部联接更新 Table01 中的 column01 的值(当前所有值均为 NULL ) 。 Table01和Table02都有一个公共列。这个想法应该是这样的:
UPDATE Table01 SET RescorceName = (
SELECT AntennaSection
FROM Table02
WHERE Table01.CellName = Table02.Cellname
)
我在下面添加了一个示例,希望结果显示如下:
任何建议将不胜感激!
答案 0 :(得分:0)
您需要确保只更新某些记录
UPDATE Table01
SET RescorceName = (
SELECT AntennaSection
FROM Table02
WHERE Table01.CellName = Table02.Cellname
-- note, this is a horrible way to solve the problem -- we should instead
-- know why we are getting more than one row and change the query.
AND ROWNUM = 1
)
WHERE Table01.CellName IN (
SELECT Table02.Cellname
FROM Table02
)