使用同一SQL表中的数据更新行

使用同一SQL表中的数据更新行,sql,Sql,我有一张像这样的桌子 messageId |会话ID | campusA | Campus 1 1 campusA 2 1 3 1 4 1 5 2 6 2 7 2 campusB 正如我们所看到的,多条消息链接到同一个conversationId,我们有一些记录的校

我有一张像这样的桌子

messageId |会话ID | campusA | Campus

1              1        campusA
2              1
3              1
4              1
5              2
6              2
7              2                   campusB
正如我们所看到的,多条消息链接到同一个conversationId,我们有一些记录的校园信息。使用此信息,我希望更新链接到同一conversationId的剩余空行。例如,我可以看到campusA链接到ConversationID1。使用此信息,我想更新与第一条记录具有相同conversationId的其余3行


我很难弄明白这一点,想知道什么是最有效的解决办法?提前谢谢你

您可以使用更新和相关子查询,如下所示:

Update your_table t
  Set t.campusa = (select max(tt.campusa) from your_table tt 
                    Where t.conversarion = tt.conversation)
Where t.campusa is null
  And exists (select 1 from your_table tt
               Where t.conversarion = tt.conversation and tt.campusa is not null)

我删除了不一致的数据库标记。请仅使用您真正使用的数据库进行标记。