比较两个文本文件的一种常见做法是使用SHA-512 [或任何其他实际的SHA算法]。如果两个SHA结果不相同,则文件不完全相同。
我想对两个SQL查询执行相同的操作。我只想知道,如果使用SHA-512,查询是否给出100%相同的结果(或者也可以使用SHA-256)?
有可能执行该操作吗?我正在使用SQL Server …
只是为了帮助…
可以理解,两个查询都以相同的顺序返回相同的列。
您必须执行以下操作:
SELECT COUNT(*) FROM ( ([YOUR_QUERY_A] EXCEPT [YOUR_QUERY_B]) -- A_B UNION ALL ([YOUR_QUERY_B] EXCEPT [YOUR_QUERY_A]) -- B_A ) EX
如果返回0,则两个查询返回相同的值
出于测试目的:
SELECT COUNT(*) FROM ( (select 1 a EXCEPT select 1) UNION ALL (select 1 EXCEPT select 1) ) EX
更改一些内部查询,看看有什么变化