首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > .NET > C# >

高分在线急求一sql语句优化,该怎么解决

2011-12-27 
高分在线急求一sql语句优化select*fromtable1where(biaotilike%兼%orneironglike%兼% )biaoti是nvarcharne

高分在线急求一sql语句优化
select     *   from   table1   where   (biaoti   like   '%兼% '   or   neirong   like   '%兼% ')  

biaoti   是nvarchar
neirong   是ntext

这是个站内搜索功能

表中数据10万左右,查询非常的慢了  
请问各位大虾   有办法优化吗?

[解决办法]
晕 你like ntext 肯定慢啊

我的方法是 建一个关键字的字段或者摘要 用来like
[解决办法]
在biaoti 上加索引.
[解决办法]
不知建全文索引能提高多少
[解决办法]
加索引吧,另外觉得标题varchar可以了
[解决办法]
Lucene .net
[解决办法]
sql语句本身可能是没什么优化的了。
直接考虑一下其它的方案吧!
[解决办法]
对于楼主你这种情况,对nvarchar和ntext类型的字段,创建索引也不会提高查询速度,楼主你可以考虑将工程转向专门面向全文检索的数据库平台(如TRS数据库)。
[解决办法]
把括号去掉
[解决办法]
站内搜索的功能做成标题和内容二选一的查询条件就足够了,一般都是搜标题,搜内容的很少
[解决办法]
like '%兼% '
这样的条件无法使用索引的,并且ntext也不能建索引
只能用全文索引
或者调整你的数据库结构
[解决办法]
这个SQL语句没法优化了。建索引也加快不了。因为你用的是左右模糊。

热点排行