我需要帮助来计算两个结果集之间的差异。
数据集看起来像:
表1:submissions
SubmissionID | TransID | Code
-------------------------------
s1 u1 code1
s1 u2 code2
s1 u3 code3
s2 u4 code1
s2 u5 code3
s3 u6 code1
表2:resubmissions
resubmissionID | SubmissionID | TransID | Code
-----------------------------------------------
s11 s1 u1 changed1
s11 s1 u2 changed2
s22 s2 u4 changed1
s22 s2 u5 code3
s33 s3 u6 code1
预期的结果是使用更改的代码计算TransID
,请注意它可能包含未更改的代码,我正在使用SQL Server 2008
目前我写了一个查询来加入这两个表:
select * from
submissions s inner join resubmissions r
on s.submissionid = r.resubmissionid
and s.TransID = r.TransID
and s.code <> r.code
我们可以用case来检查代码是否发生了变化,但是它显示了冗余值
submissionid claimcode type code ResubmissionID submissionid claimcode type code
7863 OCR S E86.0 18697 7863 OCR P K52.9
7863 OCR P K52.9 18697 7863 OCR S E86.0
请咨询
此致
答案 0 :(得分:0)
尝试以下查询:
SELECT TransID
来自提交的文件
WHERE代码&lt;&gt; (SELECT代码FROM重新提交WHERE submissions.TransID = resubmissions.TransID)
注意:此查询仅列出所有已更改代码的TransID。 (即u1,u2和u4)