【发布时间】:2018-02-27 12:10:32
【问题描述】:
我有 2 张桌子:
表'A':
Old_eid new_eid
<null> <null>
a <null>
b <null>
c <null>
表'B':
eid1 eid2
a d
b e
c f
我想按如下方式更新表“A”:
Old_eid new_eid
<null> <null>
a d
b e
c f
我想出了以下查询,但它给了我一个错误:
UPDATE A
SET new_eid = (SELECT eid2
FROM A a
JOIN B b ON a.old_eid = b.eid1)
WHERE old_eid IS NOT NULL
但它给了我以下错误:
UPDATE A
SET new_eid = (SELECT eid2
FROM A a
JOIN B b ON a.old_eid = b.eid1)
WHERE old_eid IS NOT NULL
[Amazon](500310) Invalid operation: Invalid Query:
Details:
-----------------------------------------------
error: Invalid Query:
code: 8001
context: single-row subquery returns more than one row
query: 967978
location: 8.cpp:78
process: padbmaster [pid=15160]
-----------------------------------------------;
Execution time: 0.35s
1 statement failed.
我可以理解错误,因为它导致多行,但我不确定如何获得我想要的。
如何替换这些值?任何帮助将不胜感激。
【问题讨论】:
标签: mysql sql postgresql amazon-redshift