我需要通过将文本数据与辅助表中的Notes字段连接来更新我的表tblMain中的Notes字段tblSecond通过匹配两个表中的ID字段。使用另一个表中的数据根据键值使用另一个表中的数据更新字段
我用下面的SQL:
UPDATE tblMain
SET tblMain.Notes = (tblMain.Notes + (SELECT DISTINCT Notes FROM tblSecond
WHERE tblSecond.ID = tblMain.ID))
,但我得到以下错误
Subquery returned more than 1 value.
大概是因为SELECT语句返回的整个结果。
我该如何成功执行此操作?
我只是试图再次使用MERGE '合并成tblMain \t USING \t( \t SELECT ID,注意到 \t FROM tblSecond \t)第二ON(Second.ID = tblMain.ID) \t WHEN MATCHED然后更新 \t SET tblMain.Notes = tblMain.Notes + Second.notes' 但我得到一个类似的错误: MERGE语句试图不止一次地更新或删除同一行。当目标行匹配多个源行时会发生这种情况。 MERGE语句不能多次更新/删除目标表的同一行。细化ON子句以确保目标行最多匹配一个源行,或者使用GROUP BY子句。' – mechaman64
我假设在tblSecond表中,您可以为tblMain中的单个记录创建多个笔记?换句话说,可能将tblSecond中的多个记录连接成单个tblMain记录? – LittleBobbyTables
如果第二行中有两行对应于Main中的一行,您是否想要将两行连接到Main? –