SELECT occurrence, display_term
FROM sys.dm_fts_parser ('"ROBIX 156 DM"', 1033, null, 0)
不返回预期结果(display_term):
robix
156
nn156
dm
但
robix
156 dm
nn156dm
什么是“DM”,为什么它会导致断词的意外结果,以及如何避免它?
SELECT occurrence, display_term
FROM sys.dm_fts_parser ('"ROBIX 156 DM"', 1033, null, 0)
不返回预期结果(display_term):
robix
156
nn156
dm
但
robix
156 dm
nn156dm
什么是“DM”,为什么它会导致断词的意外结果,以及如何避免它?
这里可能发生的情况是 DM 被识别为一种货币(德国马克),这导致断字器与前导数值相关联。我尝试用美元替换 DM 并最终得到相同的结果 -
SELECT occurrence, display_term
FROM sys.dm_fts_parser ('"ROBIX 156 USD"', 1033, null, 0)
occurrence display_term
1 robix
2 156 usd
2 nn156usd
目前我不知道解决方法,但如果我确实找到了解决方案,我会更新线程。
解析器正在识别货币,您可以使用以下方式确认:
SELECT occurrence, display_term
FROM sys.dm_fts_parser ('"ROBIX 156 euro"', 1033, null, 0)
occurrence display_term
1 robix
2 156 euro
2 nn156eur