首页 > 解决方案 > 左连接 vs 除了

问题描述

我正在尝试创建一个存储过程来计算大表的上周版本与本周版本(当前数据)之间的差异。

两者都LEFT JOINEXCEPT最终给出相同的结果。但是,我想知道在性能方面是否有首选方法。

标签: sqlsql-server

解决方案


LEFT JOIN并且EXCEPT不会产生相同的结果。

EXCEPT是消除重复的集合运算符。 LEFT JOIN是一种连接类型,实际上可以产生重复。在 SQL 中,对于给定的一组输入数据,两个不同的事物产生相同的结果集并不罕见。

我建议您使用最适合您的用例的一种。如果两者都有效,请测试哪个更快并使用它。


推荐阅读