从另一个查询的结果集更新Oracle Table

时间:2018-03-14 18:07:15

标签: sql oracle plsql

enter image description here

描述:您在图像上看到的第一个表需要从第二个图像上的eventdescription列更新。

我尝试过使用

condition

并给我这个错误

UPDATE currentEvent 
 SET eventdescription = ( SELECT eh.eventDescription
                        FROM eventHistory eh
                        WHERE updateTime = (SELECT MAX (updateTime)
                                                FROM eventHistory
                                                WHERE eventID = eh.eventID)
                        )

我有什么遗漏,请指教。

1 个答案:

答案 0 :(得分:1)

您可以使用ORDER BY FETCH FIRST

UPDATE currentEvent 
 SET eventdescription = (SELECT eh.eventDescription
                         FROM eventHistory eh
                         WHERE currentEvent.EventId = eh.EventId
                         ORDER BY updateTime DESC
                         FETCH FIRST 1 ROW ONLY
                        )
WHERE eventdescription IS NULL;