如何在 FORMSOF Inflectional 全文搜索中获取匹配项的位置?

2024-04-26

我使用 CONTAINSTABLE 查询与 MS SQL Server 的全文索引引擎在文本列中进行搜索;例如。:

SELECT * 
FROM MyTable
INNER MERGE JOIN CONTAINSTABLE(MyTable, sDescription, 'FORMSOF(INFLECTIONAL, "brains")')
    AS TBL1 ON TBL1.[key]=MyTable.ixKey

这可以很好地查找包含“brains”(例如“brain”、“brained”)等词的描述的行。但是,当我向用户显示这些结果时,我想突出显示与他们的查询匹配的单词(就像 Google 一样)。但我不能只在结果中查找搜索词:如果结果包含“brain”,我显然无法突出显示“brains”。

SQL Server 能否告诉我全文匹配发生在列(单词或字符)中的哪个位置?或者,我可以手动运行词干分析器来获取搜索词的所有形式吗?那么我可以分别突出显示其中每一个。


SQL Server 2008 包含一个使用全文引擎的解析器获取单词或短语的变形形式的函数:sys.dm_fts_parser http://technet.microsoft.com/en-us/library/cc721269(SQL.100).aspx#_Toc202506241.

SELECT display_term, source_term, occurrence FROM sys.dm_fts_parser('FORMSOF(INFLECTIONAL, "brains")', 1033, 0, 0)

得到一个像这样的表:

display_term | source_term | occurrence
---------------------------------------
brain        | brains      | 1
brains       | brains      | 1
brained      | brained     | 1

(使用查询短语需要更多工作,因为它会单独改变每个单词,但将它们重新组合在一起并不难。)

现在我可以突出显示任何变形形式的出现。这比 SQL Server 直接告诉我 FTS 匹配在哪里要多一些工作,但它会做。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 FORMSOF Inflectional 全文搜索中获取匹配项的位置? 的相关文章

随机推荐

  • 查找 NumPy 数组中到最近零的距离

    假设我有一个 NumPy 数组 x np array 0 1 2 0 4 5 6 7 0 0 在每个索引处 我想找到到最接近的零值的距离 如果位置本身为零 则返回零作为距离 之后 我们只对到当前位置右侧最接近的零的距离感兴趣 超级天真的方法
  • 选择选项“selected”属性

    我这里脑子一片空白 基本上我所做的是创建一个迷你文章管理器 每篇文章都可以分配到在选择下拉列表中定义的以下类别之一 Design 发展 Other 当我去编辑一篇文章时 我从数据库中检索了数据并填充了输入和文本区域 我现在想做的是应用sel
  • AWS 签名的 URL 太长,无法缩短

    我正在使用 AWS 创建一个签名 URL 以便我可以安全地将此 URL 传递给另一个 API 以供临时使用 签名的 URL 指向 S3 资源 问题是其他 API 不接受这么长的链接 因此我正在尝试缩短它 我尝试使用类似的缩短器goo gl
  • Android Studio 音乐播放器无法从 SD 卡读取,只能读取内存

    如果这被证明是一个愚蠢的问题 我深表歉意 这可能是一个快速解决方案 但我就是无法弄清楚 我正在 android studio 中构建一个音乐播放器 尽管我确实实现了 getExternalStorageDirectory 并在清单文件中添加
  • Shutterfly 订单 API 。

    我找到了这个网站 http www shutterfly com documentation api OrderImage sfly http www shutterfly com documentation api OrderImage
  • 在 Hedera 区块链中创建智能合约时出现错误“Transaction Oversize”

    我的 bin 文件大小只有 18kb 我还得到了使用 IPFS 的解决方案 但不知道如何使用它 如果有任何使用 IPFS 的参考 请分享给我 错误 PrecheckStatusError 交易 电子邮件受保护 cdn cgi l email
  • IPython Notebook 中的“斑马表”?

    我正在 IPython 中使用用于交互式分析的出色 Notebook 和 Pandas 构建一些交互式工作流程 我显示的一些表格通过一些格式化会更容易阅读 我真的很喜欢像 斑马桌 这样的东西 每隔一行都有阴影 我在这里读 http dev
  • 实体框架代码首先将同一类型的多个复杂类型映射到一个表

    如果您有以下域模型 public class Test public string Description get set public TestB A get set public TestB B get set public TestB
  • BouncyCastle 安装问题

    我正在尝试将 BouncyCastle 添加为 Windows XP Pro 上的安全提供程序 以便我可以根据说明使用它向 Android 应用程序添加一些证书here http blog crazybob org 2010 02 andr
  • Nvcc 的版本与 CUDA 不同

    我安装了 cuda 7 但是当我点击 nvcc version 时 它打印出 6 5 我想在 GTX 960 卡上安装 Theano 库 但它需要 nvcc 7 0 我尝试重新安装cuda 但它没有更新nvcc 当我运行 apt get i
  • Spring Rest api 过滤响应中的字段

    我正在使用 spring Rest api 4 x 我们有一个需求 根据请求参数过滤响应中的字段 我的用户对象 private class UserResource private String userLastName private S
  • 如何以编程方式从 Google 云端硬盘中的“与我共享”中删除文件

    在完整驱动器范围内执行以下命令 var request service Files Delete fileId 结果是 权限不足错误 尝试从 Google 云端硬盘 与我共享 文件夹中删除文件时 当登录的用户实际上无权删除不属于他们的文件时
  • Android 退出全屏后嵌入式 IFRAME 视频继续在后台播放

    我已经搜索了很多解决这个问题的方法 但显然我找不到 嗯 顾名思义 我有一个简单的 Android 应用程序 它有一个 Webview public class MainActivity extends Activity protected
  • 使用 apache poi 读取 .xlsx 文件在 Linux 机器上给出 org.apache.poi.POIXMLException

    我有一个应用程序读取 xlsx 文件并向用户显示内容 该应用程序在 Windows 环境下运行良好 我在 ubuntu 服务器上的 tomcat6 上部署了此 Web 应用程序的 war 文件 我还将 xlsx 文件复制到服务器上 代码中的
  • 这是什么错误:位于 com.google.common.base.Preconditions.checkNotNull

    我是一名新的自动化测试人员 正在处理示例测试脚本 需要你们的一些帮助 我尝试过使用 POM 和基本的 TestNG 我创建了 2 个包 页面和测试用例 当我尝试从我的页面包访问 ClickJoin Enterusername 方法时 出现一
  • 如何将对象转换为 Action

    我创建了一个简单的消息总线 用于排队和发出 发布事件 我正在使用 StructureMap 来定位注册的处理程序 Action
  • 在 n log n 时间内打乱链表的算法

    我正在尝试使用分治算法对链表进行洗牌 该算法以线性 n log n 时间和对数 log n 额外空间随机洗牌链表 我知道我可以进行类似于在简单的值数组中使用的 Knuth 洗牌 但我不确定如何通过分而治之来做到这一点 我的意思是 我实际上在
  • 将现有 MongoDB 字符串属性转换为 BSON::ObjectId

    我在 MongoDB 中有一个文档集合 其中有一个属性被存储为字符串 如果将其保存为 BSON ObjectId 会更好 集合名称是foo该字段称为bar 拥有每个领域的最佳方式是什么bar将其现有值转换为 BSON ObjectId 的实
  • stopPropagation/prevent链接内元素的默认行为

    我试图理解当 a 中的元素出现时的行为 a have a event stopPropagation or event preventDefault 在第一种情况下 单击 div 还触发了 a 事件 将其移动到另一个页面 event sto
  • 如何在 FORMSOF Inflectional 全文搜索中获取匹配项的位置?

    我使用 CONTAINSTABLE 查询与 MS SQL Server 的全文索引引擎在文本列中进行搜索 例如 SELECT FROM MyTable INNER MERGE JOIN CONTAINSTABLE MyTable sDesc