【发布时间】:2017-12-03 01:37:56
【问题描述】:
我有一个包含大量全文搜索数据的大型 SQL Azure 数据库。这适用于大多数搜索,除非搜索具有前导 0 的基于文本的数字。发生的情况是,当我搜索 00123 时,它正在搜索 123* 所以基本上它忽略了我的前导 0。下面是我尝试过的一个例子。
WHERE 包含(FullTextDatabaseField, '"00123*"')
我已经尝试过其他带有和不带有星号的变体,我已经尝试过 ContainsTable 和全文搜索的每个变体。
我在 SQL 2012 中看到您可以上传某种自定义字典,指示哪些单词应该被视为单词。但是在 SQL Azure 中,我没有看到任何这样的选项。
通过这种搜索方式,我得到了大量不相关的结果。不幸的是,这种搜索很常见。我们的数据中有一系列代码,不幸的是其中一些代码以 0 开头。有没有办法强制 SQL Azure 上的全文完全按字面处理字符串,或者有没有办法上传您想要按字面处理的常见搜索词的自定义字典。我希望它会停止尝试如此有帮助。这很烦人。
【问题讨论】:
-
请给我一些时间寻求帮助。我可能要到星期一才能找到帮助。感谢您的耐心等待。
标签: full-text-search azure-sql-database