sql – 为什么UNION比OR语句更快
发布时间:2021-03-18 16:29:01 所属栏目:MsSql教程 来源:网络整理
导读:参见英文答案 UNION ALL vs OR condition in sql server query3个 我有一个问题,我需要找到具有与值匹配的测量值,或根本没有测量值的记录.我用三种或四种不同的方法解决了这个问题,使用JOIN,使用NOT IN和使用NOT EXISTS.但是,查询最终每次都非常慢.然后我尝试
|
参见英文答案 >
UNION ALL vs OR condition in sql server query3个
阅读SO我尝试了UNION,这非常快,但对我正在使用的脚本非常不方便. 所以有两个问题: >为什么UNION这么快? (或者为什么OR这么慢)? 解决方法原因是在查询中使用OR通常会导致查询优化器放弃使用索引搜索并恢复扫描.如果查看两个查询的执行计划,您很可能会看到扫描您正在使用OR的位置,并寻找您使用UNION的位置.在没有看到您的查询的情况下,您无法就如何重组OR条件给出任何想法.但是您可能会发现将行插入临时表并连接到它可能会产生积极的结果.此外,如果您想要所有结果,通常最好使用UNION ALL而不是UNION,因为您删除了行匹配的成本. (编辑:百科站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
站长推荐
- sql-server – SQL Server CASE语句是否评估所有
- sql-server – 什么时候应该指定PAD_INDEX?
- sql-server – 如何在SQL Server中为存储过程设置
- sql-server – 为什么UNIQUE约束只允许一个NULL?
- sql-server – 如何使用外部SQL数据库中的数据填
- SQL Server:带XML输出的两级GROUP BY
- 如果数据库表更新/插入,如何让Windows C#控件自动
- 在SQL Server XML数据类型上使用LIKE语句
- sql-server – 使用SQL Server复制有哪些性能影响
- SQL Server怎样做分离与附加数据库的操作?
热点阅读

