读书人

多字段搜索有关问题

发布时间: 2012-03-01 10:25:47 作者: rapoo

多字段搜索问题
数据库中有很多字段
搜索时主要是文本及数字的

nSex=1 and sName like '%小明% ' ...还有更多条件
现在的问题是
把所有的=字段放在前面 (精确查询),like 的放后面( 模糊搜索)
不知道会不会快点
也就是like还会不会全表扫描,还是只对前面的字段限制中扫描
如果是全表扫描,应该怎么优化?


[解决办法]
楼主搞反了吧,在 where 后的条件中,要把能够筛选掉最多数据的放在最后边
也就是 SQL 对 where 后的条件是自右向左进行优化的
[解决办法]
事件查看器里面跟踪一下,或是去sql版问问,哪边牛人多:)
[解决办法]
建议你使用SQL Server的全文检索功能,contain关键字就能查询全string类型的字段。速度还可以。
[解决办法]
问题不大,数据库系统在解释你的语句的时候会自动做一些优化的

读书人网 >ASP

热点推荐