我有两个表:UPDATE [SONE].[dbo].[F_DOC]
SET [DC_Piece] = 'FA' + CAST (CAST(RIGHT([DC_Piece],7)AS INT)-1 AS VARCHAR)
where [cbMarq]=8
和_adagio_items
,其中列catlg_products
和_adagio_items.ItemId
应包含相同的值。
我想在catlg_products.name
中查找并标记_adagio_items
中不存在的记录。
到目前为止,我能够创建查找此类记录的sql语句:
catlg_products.name
现在我需要在SELECT ItemId
FROM _adagio_items , catlg_products
WHERE catlg_products.name <> _adagio_items.ItemId
标记我找到的记录。所以我想这样做:
_adagio_items
并收到错误消息: &#34;您无法指定目标表&#39; _adagio_items&#39;用于FROM子句&#34;
的更新答案 0 :(得分:3)
尝试这种方式:
UPDATE _adagio_items
LEFT JOIN catlg_products ON _adagio_items.ItemId = catlg_products.name
SET _adagio_items._new_record = 1
WHERE catlg_products.name IS NULL