您的位置:首页 > 数据库

SQL查询优化一小例

2009-05-05 13:59 288 查看
由于历史原因,公司的职员档案主关键字为:GSB,S61BH,其实扣除个别记录,GSB就是多余的,一般情况下,S61BH足够做为主关键字了。

如果我执行如下语句:

select S61BH, S61MC from S61ZYDA where S61BH=10335

结果是扫描聚集索引,时间为:0.61秒

理想情况下,应该是这样的语句:

select S61BH, S61MC from S61ZYDA where GSB='1' and S61BH=10335

结果是扫描聚集索引中特定范围的行,时间为:0.003秒

GSB目前就那几个值:1,2,3,9

后来,我想把第一个SQL语句写成这样:

select S61BH, S61MC from S61ZYDA where GSB in ('1', '2', '3', '9') and S61BH=10335

结果速度与第二个完全一样。

真棒!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: