日期:2014-05-18  浏览次数:20510 次

select * from table where 条件A and 条件B and 条件C;条件ABC的执行顺序是什么 ?或者说有没有执行顺序?
求解

------解决方案--------------------
先写先执行,所以一般把强限制条件放前面
------解决方案--------------------
现在的数据库会对语句进行自动优化,其实是没有顺序关系的。
不过还是建议把一些能利于查询的条件放前面
------解决方案--------------------
没有固定的执行顺序,SQL引擎会根据字段索引,统计信息,数据量等情况,

自动选择一个最合适的执行计划,一般无需人为干预.
------解决方案--------------------
有查询优化器来决定的,通常是基于代价估计来做出决定,代价小的先执行,但也有all-at-once-operation
------解决方案--------------------
sql 会自己选择的

通常有聚集索引查找的优先。。。
也可能并列执行,关键看条件复杂度和表数据情况以及索引情况了