多字段搜索问题
数据库中有很多字段
搜索时主要是文本及数字的
如
nSex=1 and sName like '%小明% ' ...还有更多条件
现在的问题是
把所有的=字段放在前面 (精确查询),like 的放后面( 模糊搜索)
不知道会不会快点
也就是like还会不会全表扫描,还是只对前面的字段限制中扫描
如果是全表扫描,应该怎么优化?
------解决方案--------------------楼主搞反了吧,在 where 后的条件中,要把能够筛选掉最多数据的放在最后边
也就是 SQL 对 where 后的条件是自右向左进行优化的
------解决方案--------------------事件查看器里面跟踪一下,或是去sql版问问,哪边牛人多:)
------解决方案--------------------建议你使用SQL Server的全文检索功能,contain关键字就能查询全string类型的字段。速度还可以。
------解决方案--------------------问题不大,数据库系统在解释你的语句的时候会自动做一些优化的