3

我有一个用户输入处理器,可以转换this search"this" AND "search". 我的处理器运行良好,它根据我认为的word breakers内容(包括标点符号)将用户输入分成几部分。

问题是,在编制索引时,Sql Server 在处理数字时采用了一种特殊的方法。

如果您索引以下字符串:

12,20.1231,213.23,45,345.234.324.556,234.534.345

它将找到以下索引键:

12
1231
20
213
23,45 (detected decimal separator)
234.534.345 (detected thousand separator)
345.234.324.556 (detected thousand separator)

现在,如果用户搜索324他/她将找不到任何东西,因为324包含在最后一个条目中,而不是在开头,所以它不会被找到。我希望它停止将数字视为数字,而只是像使用单词一样对其进行索引。

有没有办法改变这种行为?没有实现太多代码?

4

1 回答 1

0

不确定我是否正确理解了这个问题,但如果你说 SQL 正在查找数字,它应该在哪里找到字符串,然后将它们转换为字符串似乎是解决方案。

select cast(345234324556 as nvarchar)
于 2012-10-23T16:08:01.083 回答