Asp.net 在sql server中使用全文搜索搜索字符串的中间部分 我不能用全文检索索引搜索字符串的中间部分,例如:有一个字符串“我喜欢音乐”,我找不到字符串中间部分的搜索。 < P>尝试运算符。< /P> SELECT * FROM YourTABLE WHERE ColumnName LIKE '%like%'
试试接线员Asp.net 在sql server中使用全文搜索搜索字符串的中间部分 我不能用全文检索索引搜索字符串的中间部分,例如:有一个字符串“我喜欢音乐”,我找不到字符串中间部分的搜索。 < P>尝试运算符。< /P> SELECT * FROM YourTABLE WHERE ColumnName LIKE '%like%',asp.net,sql,sql-server,sql-server-2008,Asp.net,Sql,Sql Server,Sql Server 2008,试试接线员 SELECT * FROM YourTABLE WHERE ColumnName LIKE '%like%' 在查询中使用Like关键字,如下所示: select * from tablename where col like '%like%' 以下是sql中like的教程: 以下是MSDN: 希望对您有所帮助。在查询中使用Like关键字,如下所示: select * from tablename where col like '%like%
SELECT
*
FROM
YourTABLE
WHERE
ColumnName LIKE '%like%'
在查询中使用
Like
关键字,如下所示:
select * from tablename where col like '%like%'
以下是sql中like的教程:
以下是MSDN:
希望对您有所帮助。在查询中使用
Like
关键字,如下所示:
select * from tablename where col like '%like%'
以下是sql中like的教程:
以下是MSDN:
希望对您有所帮助。为了继续使用全文索引并避免表格扫描,请尝试以下操作
select *
from yourTable
where contains (ColumnName,'like')
and (ColumnName not like 'like%' or ColumnName like '_%like%')
但是,查询优化器可能会认为完整表扫描更有效。为了仍然使用全文索引并避免表扫描,请尝试以下操作
select *
from yourTable
where contains (ColumnName,'like')
and (ColumnName not like 'like%' or ColumnName like '_%like%')
但是,查询优化器可能会认为完整表扫描更有效。检查表的统计信息是否过期,尤其是检查与全文索引相关的统计信息。由于您使用的是SQl Server 2008,因此,您可以查询DMV以获取索引的统计信息,也可以使用DBCC查看统计信息的详细信息
DBCC SHOW_STATISTICS ("[schema].[table]",indexname);
检查第一个返回结果,[Update]、[rows]、[rows sampled],如果统计数据过期,或者[rows sampled]远远小于[rows],这会导致SQL引擎决定使用表扫描而不是使用索引 检查表中的统计信息是否过期,尤其是检查与全文索引相关的统计信息。由于您使用的是SQl Server 2008,因此,您可以查询DMV以获取索引的统计信息,也可以使用DBCC查看统计信息的详细信息
DBCC SHOW_STATISTICS ("[schema].[table]",indexname);
检查第一个返回结果,[Update]、[rows]、[rows sampled],如果统计数据过期,或者[rows sampled]远远小于[rows],这会导致SQL引擎决定使用表扫描而不是使用索引 从包含(描述“,“like””)和(描述不类似“like%”或描述类似“,”的全文中选择*)--它不工作。我测试了它,它确实在我的机器上工作。第二行过滤掉句子开头只有一个“like”的任何行,而第一行只包括句子中有一个“like”的行。你能描述一下什么是不起作用的吗?考虑有字符串的表,写任务,读任务,仔细地研究任务,我搜索这个单词“the”这个词,它不适用于所有其他词,它工作得很好……“是”一个停顿词。默认情况下,它不包括在全文索引中。您必须禁用使用停止列表。尝试
alterfulltext INDEX ON SET STOPLIST=OFF
。你的问题与我的建议无关。这是一个通用的全文问题(好吧,称之为特性)从例如“全文中选择*,其中包含(描述,“‘像’”)和(描述不像‘像%’或描述像“‘像%”)---它不工作。我测试了它,它确实在我的机器上工作。第二行过滤掉句子开头只有一个“like”的任何行,而第一行只包括句子中有一个“like”的行。你能描述一下什么是不起作用的吗?考虑有字符串的表,写任务,读任务,仔细地研究任务,我搜索这个单词“the”这个词,它不适用于所有其他词,它工作得很好……“是”一个停顿词。默认情况下,它不包括在全文索引中。您必须禁用使用停止列表。尝试alterfulltext INDEX ON SET STOPLIST=OFF
。你的问题与我的建议无关。这是一个一般性的全文问题(好吧,称之为特征),我认为问题在于“在字符串/句子中间”的从句。据我所知,没有办法用纯文本来查询,我认为问题在于“在字符串/句子的中间”子句。据我所知,没有办法用纯文本查询。