当前位置:首页>>

技术支持

>>正文

SQL查询优化之六

作者【佚名】—日期【2013/12/14 10:41:48】—来源【深圳市英普瑞科技】

        OR在很多境况下,使用起来时非常的方便,大多数查询条件中,不乏“或”的需要,然而,OR却会对索引列造成很严重的后果,造成全表的扫描,失去了索引列应有的效果,UNION使用,却能代替OR的效果,同时也能避免对索引列的影响。
        假设keyword和keyno都是表keycontent的索引列,如下:
        高效:
                 select keyword,keyno from keycontent where  keyno=1
                 union
                 select keyword,keyno from keycontent where keyword='function'

        低效:
                 select keyword,keyno from keycontent where  keyno=1 or keyword='function'
        如果是出于以下规范统一的必要,需要使用OR,像这种情况,建议将记录数少的索引列放于条件的前面,这样在一定程度上也能得到一定的性能优化。

Richard
2031-12-14

SQL查询优化之五           SQL查询优化之七
友情链接

深圳市英瑞普科技 版权所有Copyright©2008-2014 enprise.net
Enprise All Rights Reserved 粤ICP备05125435号

总机电话:0755-33286598  业务联系:13530388631  中国-深圳

展开