栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

JOIN与EXISTS的表现

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JOIN与EXISTS的表现

NOT ISISTS比使用LEFT OUTER JOIN使用IS NULL条件排除参与表中缺少的记录的效率更高,因为优化程序将选择使用带有NOT
EXISTS谓词的EXCLUSION MERGE JOIN。

虽然您的第二项测试未对数据集产生令人印象深刻的结果,但随着数据量的增加,使用不存在连接而不是通过左联接获得的性能提升非常明显。请记住,表将需要像参加LEFT
JOIN一样,由参加NOT EXISTS联接的列进行散列分布。因此,数据偏斜会影响EXCLUSION MERGE JOIN的性能。

编辑:

通常,我会将EXISTS替换为IN,而不是将其用于重新编写联接解决方案。当参与逻辑比较的列可以为NULL时,尤其如此。这并不是说您不能使用EXISTS代替INNER
JOIN。代替EXCLUSION JOIN,您将最终获得INCLUSION JOIN。本质上,INNER
JOIN是一个包含联接。我敢肯定有些细微之处我会忽略,但是如果您希望花些时间阅读它们,可以在手册中找到它们。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/431720.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号