DECLARE @number varchar(80)
SET @number= '123'
update 表1 set fname = (select fname from 表2 where fitem = '4' and fnumber =@number) where fnumber = @number
update 表1 set fname=b.fname
from 表1 a,表2 b
where a.fnumber=b.fnumber
and b.fitem='4'
and fnumber='123'
试试以下语句
with mtbl as ( select '123' as mycode from dual)
update 表1 set fname = (select fname from 表2 where fitem = '4' and fnumber in (select mycode from mtbl)) where fnumber in (select mycode from mtbl)