【发布时间】:2011-12-03 11:48:59
【问题描述】:
我知道全文搜索不适用于数值数据类型字段,但我想在搜索中包含数值。
我有一个项目列表,项目表中有 3 列是数字数据类型。但是,此表不是我应用全文搜索目录的表。我有另一个表,我正在搜索的 FTSItems(项目实际上存在于另一个数据库中)。
因此,我正在考虑将表格中的所有数值转换为文本 (nvarchar),全文搜索将应用于该文本。
注意:原始 Items 表来自 Microsoft Dynamics 数据库。该表有时会采用这些数值并将它们插入项目表的“项目名称”列中。
例如:
ItemID: 1
ItemName: Bottlecap .25 inch diameter blue
OrificeSize: .25 (Datatype numeric(6,2) considering converting to nvarchar)
Color: blue
我只是想知道这是否值得采用,或者是否有其他可能的解决方案来满足我的搜索要求。
更新
我应该在我原来的问题中包含这个。我正在尝试为用户提供类似谷歌的搜索,其中用户只有一个文本框。然后搜索将需要搜索用户在表的所有列上输入的内容。
我借鉴了this article 中提出的一些想法。
【问题讨论】:
-
不清楚你为什么要这样做。为什么不直接使用数值参数查询数值列呢?您能否展示一个示例查询并解释为什么您不能使用“正常”查询?
标签: sql-server full-text-search