3

是否可以从 SQL 中的级联删除中输出值?

就像是:

DELETE [Families]
    OUTPUT [deleted].[FamilyID] [deleted].[FamilyName], [Members].[MemberName]
    FROM [Families]
    LEFT JOIN [Members]
        ON [Members].[FamilyID] = [Families].[FamilyID]

如果有两个家庭共有三个成员,它应该产生类似的结果:

[FamilyID]   [FamilyName]   [MemberName]
 12           'Family A'     'Member 1'
 12           'Family A'     'Member 2'
 13           'Family B'     'Member 3'

对于每个族产生 1 行的解决方案也是可以接受的,其中级联删除的成员位于分隔列表中。就像是:

[FamilyID]   [FamilyName]   [MemberNames]
 12           'Family A'     'Member 1|Member 2'
 13           'Family B'     'Member 3'
4

1 回答 1

2

我能找到的最佳解决方案产生两个结果集:

  1. 选择要删除到表变量中的族 ID。
  2. 删除/输出对表变量进行内部连接的族成员。
  3. 删除/输出对表变量进行内部连接的族。
于 2010-10-19T16:39:37.857 回答