当前位置:百科科普帮 > 经验 > distinct会影响效率吗
手机版

distinct会影响效率吗

来源:百科科普帮 阅读:2.04W 次

distinct会影响效率吗

distinct不会影响效率,只是这种代码的效率很低。

大多数情况下,Distinct函数都会导致对最终结果集完成一次排序,因此,这就成为成本最昂贵的排序之一。Distinct一直是SQL语言中成本最高的函数之一。不过,对于DB2V9,优化工具会尽量利用索引来消除为确定唯一性所带来的排序,其方法类似于目前用GroupBy语句完成优化时的做法。不过,实际上不必在SQL中使用Distinct,完全可以使用其他方式重写查询来得到同样的结果,这样做往往更为高效。开发人员现在都很喜欢用Distinct,很多人在所有语句上都会加上Distinct来确保不出现重复。不过这种代码的效率很低。在对应用调优时,我首先要做的事情之一就是审查源代码,找出所有包含Distinct的语句,了解这些查询是否确实会得到重复的结果,查看这个Distinct是否会导致一个排序,然后重写这些语句。通过对每晚批量作业的全面分析,就能很容易地大幅减少批量处理周期时间。不过要记住,如果查询中包含Distinct,只要不会因此导致执行一个排序,这个查询可能也很高效。

本文链接:https://www.bkkpb.com/jybk/e5n225.html

Copyright © 2024. 百科科普帮 All right reserved. 黑ICP备20186528号-2

文字美图素材,版权属于原作者。部分文章内容由网友提供推送时因种种原因未能与原作者联系上,若涉及版权问题,敬请原作者联系我们,立即处理。