基于VLOOKUP结果的SQL更新值



我正在使用DataGrip,并且有一个包含2个表的Oracle SQL数据库。

我正在尝试使用另一个表的vlookup/eouter联接来更新Table01column01ULL(。表01和表02都有一个公共列。这个想法应该是这样的:

UPDATE Table01 SET RescorceName = (
SELECT AntennaSection 
FROM Table02 
WHERE Table01.CellName = Table02.Cellname
)

我在下面添加了一个我希望结果看起来像什么的例子:

在此处输入图像描述

如有任何建议,我们将不胜感激!

您需要确保只更新的一些记录

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
)

最新更新