我似乎在Microsoft SQL Server 2005中有一个奇怪的错误,其中FREETEXT()
搜索在某种程度上区分大小写,尽管整理不区分大小写(Latin1_General_CI_AS
)。
首先,LIKE
查询完全不区分大小写,所以
WHERE column LIKE '%word%'
和
WHERE column LIKE '%Word%'
返回相同的结果。
此外,FREETEXT
在某种程度上不区分大小写,例如
WHERE FREETEXT(column, 'Word')
将返回不同案例的结果。
BUT
WHERE FREETEXT(column, 'word')
虽然仍然返回word
的不区分大小写的匹配项,但会提供不同的结果集。
或者,正如我在调查后发现的那样,搜索word
会为word
的不同案例提供所有匹配,但搜索Word
会给出相同的PLUS屈折结果。
或者使用我找到的一个实际案例,搜索marketingleader
会返回包含该词的所有结果,与案例无关,而搜索Marketingleader
会返回这些,但结果也只是包含在搜索小写时不显示的leader
。
有没有人知道造成这种情况的原因以及如何开启小写单词的屈折/模糊搜索?
任何帮助都将不胜感激。
答案 0 :(得分:1)
使用freetext
的替代contains
,其中屈折结果是可选的。
.. oups只是看到你在你的问题中提到了contains,但是它的行为与提供的例子中的freetext的行为方式相同吗?