varchar(60)的字段,30万数据,用Contains,还是Like
varchar(60)的字段,30万数据,要对这个字段进行检索
用Contains,还是Like
想得到的数据是Like '%关键字% '这样的效果
都说Like速度慢
这样的量,大家说说有没有必要加全文检索
高手帮忙,谢谢
[解决办法]
建索引
用charindex( '关键字 ',字段)> 0
[解决办法]
Like '%关键字% '
charindex( '关键字 ' , 字段)
对该字段建立索引
[解决办法]
Like '%关键字% ' 这种方式用不上索引。
[解决办法]
用Contains肯定会快(如果列的属性为text,ntext,varchar等)
[解决办法]
三十万没必要建全文索引,在搜索字段上建索引进行查询即可。
如果对多字段进行查询的话可能会慢。
[解决办法]
用函数charindex()和前面加通配符%的LIKE执行效率一样
[解决办法]
Contains是比like快
[解决办法]
没有必要加全文检索
如果是:
where 1=1 and 索引字段 Like '%关键字% '
索引是不起作用的
[解决办法]
30w的数据实在是寥寥,Like '%关键字% ' 也没什么问题
[解决办法]
楼主只有自己比较各种方法的效率了,因为其他人没这么大的数据,哈
[解决办法]
如果是varchar类型,charindex 和like 都可以,但是charindex的效果更快
如果是text 类型,数据量比较大,charindex函数无效,用全文索引
[解决办法]
学习过 ..目前还只会用LIKE
[解决办法]
我这二十六万,查聚集索引列很快charindex()方法,
如果多字段查询的话考虑全文索引用contains
[解决办法]
我着40万,用like 没有觉得很慢. 用不同的计算机效率有所不同吧