【发布时间】:2011-10-31 15:08:04
【问题描述】:
我正在尝试根据来自相关表的查询结果更新一个表中的许多记录。在此示例中,我在 tbl_events 中有 150 条记录,我想使用“entered_by”进行更新,为了获得这 150 条记录,我需要将选择与 tbl_locations 中的 150 条记录相匹配,在备注字段。 tbl_locations 中不存在“Entered_by”值,我只是试图根据关系前提条件更新表。但我收到以下错误:
UPDATE TBL_EVENTS
SET Entered_By = 'Fred'
FROM GRSTBL_EVENTS as sp
JOIN TBL_LOCATIONS as so
On sp.Location_ID = so.Location_ID
AND so.Notes =(SELECT Notes from TBL_LOCATIONS where Notes = 'needs update')
消息 512,第 16 级,状态 1,第 1 行 子查询返回超过 1 个值。当子查询跟随 =、!=、、>= 或子查询用作表达式时,这是不允许的。 声明已终止。
【问题讨论】:
标签: sql sql-server join sql-update