【发布时间】:2013-12-03 23:38:09
【问题描述】:
我正在尝试根据联接表中的数据更新字段。我读过 Update 命令不适用于 where 子句中的表连接。但是,我不能使用 Exists 命令解决方法,因为我的条件不是存在链接记录,而是链接记录中的值。
update stock S
set stm_auto_key=186086
From
STOCK Left Join
STOCK_RESERVATIONS On STOCK.STR_AUTO_KEY = STOCK_RESERVATIONS.STR_AUTO_KEY
Where
S.QTY_OH > 0 And
S.STM_LOT = 128729 And
STOCK_RESERVATIONS.IND_AUTO_KEY Is Null
select 语句可以单独工作。但是在更新命令中使用它会产生“SQL 命令未正确结束”。
提前谢谢...
【问题讨论】:
-
您在
FROM子句中有JOIN。 -
你到底想用你的 sql 做什么?您能否发布更多有关您的表格结构和理想结果的信息。
-
尝试更新库存 s set stm_auto_key=186086 where S.QTY_OH > 0 And S.STM_LOT = 128729 And s.STR_AUTO_KEY in (select STR_AUTO_KEY from STOCK_RESERVATIONS sr where sr.IND_AUTO_KEY Is Null);