我必须更新一个字段,其值由3个表的连接返回.
例:
select
im.itemid
,im.sku as iSku
,gm.SKU as GSKU
,mm.ManufacturerId as ManuId
,mm.ManufacturerName
,im.mf_item_number
,mm.ManufacturerID
from
item_master im, group_master gm, Manufacturer_Master mm
where
im.mf_item_number like 'STA%'
and im.sku=gm.sku
and gm.ManufacturerID = mm.ManufacturerID
and gm.manufacturerID=34
Run Code Online (Sandbox Code Playgroud)
我想更新mf_item_number表的字段值item_master与在上述条件中连接的其他值.
我怎样才能在MS SQL Server中执行此操作?
我有两个表 TBL_TEST1 和 TBL_TEST2,两个表中都有列 DISTRICT 和 NAME,两个表中的 DISTRICT 列中的数据相同,我想将 TBL_TEST2 所有 NAME 列值更新为“完成”,其中 TBL_TEST2 表中的 DISTRICT 值'两个表中均找到 1'。
下面是我的查询表
SELECT * FROM TBL_TEST1
DISTRICT NAME
1 Rashid
2 Ramish
1 Ali
1 Karim
Run Code Online (Sandbox Code Playgroud)
和
SELECT * FROM TBL_TEST2
DISTRICT NAME
1 DDD
2 DDDY
3 DDDD7
1 DD1
1 DDD4
Run Code Online (Sandbox Code Playgroud)
当我尝试时
UPDATE TBL_TEST2 SET TBL_TEST2.NAME = 'DONE' FROM TBL_TEST2 INNER JOIN TBL_TEST1 ON TBL_TEST2.DISTRICT = TBL_TEST1.DISTRICT WHERE TBL_TEST2.DISTRICT = '1'
Run Code Online (Sandbox Code Playgroud)
我收到下面的错误消息
ORA-00933: SQL command not properly ended
Run Code Online (Sandbox Code Playgroud)
我测试了其他帖子中的代码,我问,但是我的代码是正确的,为什么我仍然收到该错误消息