【发布时间】:2014-06-29 16:23:01
【问题描述】:
我需要帮助来计算两个结果集之间的差异。
数据集看起来像:
表一: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
请指教
问候,
【问题讨论】:
-
向我们展示到目前为止您的努力!这不是为我编写代码服务 - 如果您有任何需要和你被卡住了......
-
改成
on s.submissionid = r.submissionid -
它在真实数据中不起作用,它显示结果扭曲(参见更新),而这两行没有改变
标签: sql sql-server