我试图用Final中的值更新表Original。我是SQL的新手,但是我已经花了两个小时尝试更改各种样本以满足我的需求。我正在使用Access 2007。
UPDATE Original o SET o.[Assest Description] = ( SELECT f.[Assest Description] FROM Original o, Final f WHERE o.[Assest No] = f.[Assest No]) WHERE o.[Assest No] = Final.[Asset No]
我不确定您的select陈述仅返回一行。如果要使用select分配语句对表执行更新,则 必须 确保它仅返回一行。
select
除此之外,您可以考虑下一个解决方案:
update Original as o inner join Final as f on o.[Assest No] = f.[Assest No] set o.[Assest Description] = f.[Assest Description]
请注意,只有当两者[Assest no]都是表Original和Final表中的唯一键并且它们之间具有适当的关联时,这才可以正常工作。
[Assest no]
Original
Final