gpt4 book ai didi

sql-server - sql server 全文搜索 - 在全文搜索中查找同义词库的示例用法

转载 作者:行者123 更新时间:2023-12-02 00:08:37 29 4
gpt4 key购买 nike

我正在对冒险作品进行一些选择。
(即

SELECT *
FROM Production.Product
WHERE FREETEXT(*, 'screw washer spaner');

)我还没有遇到过使用同义词库并显示同义词查找的select。
我怎么知道我是否正在使用此功能?
任何人都可以提供一个演示同义词库用法的选择

最佳答案

这是设置脚本(感谢 Itzik Ben-Gan(作者查询 SQL Server)),它允许您使用同义词库底部的示例查询:

IF OBJECT_ID('dbo.Documents', 'table') IS NOT NULL
DROP TABLE dbo.Documents;

CREATE TABLE dbo.Documents
(
id INT NOT NULL IDENTITY,
title NVARCHAR(100) NOT NULL,
doctype NCHAR(4) NOT NULL,
docexcerpt NVARCHAR(1000) NOT NULL,
doccontent VARBINARY(MAX) NOT NULL,
CONSTRAINT PK_Documents
PRIMARY KEY CLUSTERED(id)
);
GO
INSERT INTO dbo.Documents
(title, doctype, docexcerpt, doccontent)
SELECT N'Introduction to Data Mining',
N'docx',
N'Using Data Mining is becoming more a necessity for every company
and not an advantage of some rare companies anymore. ',
bulkcolumn;
GO

--编辑词库文件加入

<expansion>    
<sub>need</sub>
<sub>necessity</sub>
</expansion>

--运行以下命令重新加载你编辑过的同义词库

EXEC sys.sp_fulltext_load_thesaurus_file 1033; 
GO

然后在单独的批处理中,执行以下命令:

SELECT * 
FROM dbo.Documents
WHERE FREETEXT(doccontent, N'FORMSOF(THESAURUS, need)');
GO

文档摘录中没有“需要”一词,但是由于同义词已加载到同义词库中,因此如果正确加载同义词库,该行将返回。如果您有这方面的问题,有很多关于如何加载/配置它的 StackOverflow 文章和 BOL 条目。

关于sql-server - sql server 全文搜索 - 在全文搜索中查找同义词库的示例用法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16839802/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com