sql server 全文搜索(全文索引)
参考:
https://www.cnblogs.com/chenmh/p/4434890.html
https://www.cnblogs.com/lyhabc/p/3255960.html
按照链接方式创建全文索引
使用:
全文谓词
全文查询使用全文谓词(CONTAINS 和 FREETEXT)以及全文函数(CONTAINSTABLE 和 FREETEXTTABLE)。它们支持复杂的 Transact-SQL 语法,这种语法支持各种形式的查询词。若要编写全文查询,必须了解何时以及如何使用这些谓词和函数。
CONTAINS 谓词可以搜索:
- 词或短语。
- 词或短语的前缀。
- 与另一个词相邻的词。
- 由另一个词的词形变化而生成的词(例如,drive 一词是 drives、drove、driving 和 driven 词形变化的词干)。
- 使用同义词库确定的另一个词的同义词(例如,metal 一词可能有 aluminum 和 steel 等同义词)。
sql server 全文检索有两种搜索方式,一种是contains,另一种是freetext。前者是包含,类似于like '%关键词%',后者则是将一段文字分词以后对每个词进行搜索:freetext(字段,'词一词二')。
SELECT * FROM dbo.Books
WHERE FREETEXT(Name,'缩印辞海')
根据查找结果的相似度排序
SELECT Name,ID FROM dbo.Books a
inner join FREETEXTTABLE()(dbo.Books, Name,'缩印辞海',10) as b
ON a.ID=b.[key]
order by b.RANK DESC
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~