SQL语句的条件是如何被处理的?(100分)

  • 主题发起人 主题发起人 Kent
  • 开始时间 开始时间
K

Kent

Unregistered / Unconfirmed
GUEST, unregistred user!
我的程序统计查询速度非常慢,现在想提高速度。。。
我的统计查询全用的是sql语句,嵌套的多表的查询,
我想知道sql的条件是如何被处理的?
例如:
select * from database where condition1 and condition2

select * from database where condition2 and condition1
有没有区别?(如果符合condition1的记录多些,符合condition2的
记录少些...)
是从左到右处理还是从右到左处理,哪个效率高些?


 
I think the speed will be faster if u use index.
 
我想条件的书写顺序应该不会对速度产生差别,sql服务器都会优化查询语句的.
最好还是从索引,库结构,条件上想办法提高速度吧
 
我也同意popeye,实在不行,你可以用存储过程写,这样速度
会提高.
 
有是侯用存储过程反而回让速度降低。
你如果是用的SQL嵌套查询的话,每个记录都要产生一个到多个中间表,这样速度自然
会慢。
建议你在程序中用中间表,把中间结果集保存在其中,然后对起进行处理。
当记录很多时,这种方法可以很大地提高效率。(虽然有点麻烦)
 
条件的顺序不会有影响,但是条件的内容影响会很大,
查询统计一般都比较复杂,没有统一的优化标准,
如果想深入探讨,只能把条件帖出来,具体分析.
 
多人接受答案了。
 
后退
顶部