当我写查询的时候,我会一步一步地写。有时,在这个过程中,我会意识到我犯了一个“错误”,比如最终得到了额外的记录或丢失了记录。因此,我通常会像这样比较这两个查询:
(Select blah blah blah ) Mine
Inner join
((Select blah blah blah ) Orig
Where Mine.PK <> Orig.PK或者,如果我要查找丢失或多余的记录,我将使用左连接,并查找空值。
有没有更好的方法来快速找出为什么两个查询返回不同数量的记录?
发布于 2010-01-12 06:28:08
首先,您需要一个完整的连接。Inner join将只显示in中的记录,但不会显示Orig中的记录。一个完整的连接还将显示在Orig中的和在我的中丢失的那些。
检查差异的一种快捷方法是比较CHECKSUM_AGG(CHECKSUM(*))的结果
https://stackoverflow.com/questions/2045392
复制相似问题