我尝试从表B中的选择数据更新表A列。但是我按照上面所述点击错误消息“子查询返回的值超过1。当子查询跟随=
时,不允许这样做,{ {1}},!=
,<
,<=
,>
或子查询用作表达式时。“
请查看我的代码如下:
>=
请帮助,因为已经坚持了好几个小时了。
答案 0 :(得分:0)
如果您只运行子查询SELECT a.CVT_FACTOR FROM TABLE_A a JOIN TABLE_B b ON a.PROD_CODE = b.PROD_CODE
,您会发现它返回多行。使用它来更新值时不允许这样做。
您可能想要做的是:
UPDATE TABLE_A SET CVT_FACTOR = (
SELECT TABLE_B.CVT_FACTOR FROM TABLE_B
WHERE TABLE_B.PROD_CODE = TABLE_A.PROD_CODE
)