sql - 左连接 vs 除了
问题描述
我正在尝试创建一个存储过程来计算大表的上周版本与本周版本(当前数据)之间的差异。
两者都LEFT JOIN
将EXCEPT
最终给出相同的结果。但是,我想知道在性能方面是否有首选方法。
解决方案
LEFT JOIN
并且EXCEPT
不会产生相同的结果。
EXCEPT
是消除重复的集合运算符。 LEFT JOIN
是一种连接类型,实际上可以产生重复。在 SQL 中,对于给定的一组输入数据,两个不同的事物产生相同的结果集并不罕见。
我建议您使用最适合您的用例的一种。如果两者都有效,请测试哪个更快并使用它。