where后面条件的先后顺序有讲究吗

bzscs 2005-02-28 08:37:21
比如说一个条件是Id not in(1,2,3,4,5),一个条件是Auditing=true(表示通过审核),一个条件是Datediff('d',getDate(),[Date])>10,一个条件是TypeId in (5,6,7,8)(表示分类Id),

在写sql语句的时候怎么排列这些条件,会对查询速度有帮助呢?
...全文
529 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
dzhfly 2005-02-28
  • 打赏
  • 举报
回复
在查询分析器中对要执行的sql语句,用显示预计的执行计划,看sql 的开销有什么不同
dazhu2 2005-02-28
  • 打赏
  • 举报
回复
mark
wudan8057 2005-02-28
  • 打赏
  • 举报
回复
有关系啊!选择性越高的列就应排在前面.建立索引时也应按这样的原则排列,如日期就是选择性高的列,而Auditing是选择性低的列,因为分别单独以Auditing为查询条件的返回值远远大于以日期为查询条件的返回值
---涛声依旧--- 2005-02-28
  • 打赏
  • 举报
回复
where 后面的先后順序會影響你的查詢速度﹐一般將索引過的字段放在前面
NewQger 2005-02-28
  • 打赏
  • 举报
回复
最好不要用字段计算的条件,条件顺序,先写过滤数据量大的
venket 2005-02-28
  • 打赏
  • 举报
回复
我认为是有影响的,因为你要塞选条件时,先后顺序的不同,可以减少/增加不少的额外的运算.
pbsql 2005-02-28
  • 打赏
  • 举报
回复
对查询速度的影响在于你怎么建的索引,不在于怎么排列

34,587

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧