问题标签 [freetext]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
1241 浏览

sql - 使用 CONTAINS 在表中查找项目

我正在尝试编写一个允许用户搜索多个名称字符串的 SP,但支持 LIKE 功能。例如,用户的输入可能是字符串“Scorsese, Kaurismaki, Tarkovsky”。我使用 split 函数将该字符串转换为具有一列的表 var,如下所示:

然后,通常我会使用 IN 语句从表中返回与表 var 中的任何这些值匹配的任何值:

但是,这只返回完全匹配,我需要返回部分匹配。我正在寻找这样的东西,但实际上会编译:

我发现了其他问题,其中明确指出不能将 LIKE 和 IN 结合使用,建议使用 CONTAINS。我的具体问题是,是否可以将 CONTAINS 与值的表列表结合起来,如上所述?如果是这样,该语法会是什么样子?如果没有,还有其他解决方法可以实现我的目标吗?

我正在使用 SQL Server 2016,如果它有什么不同的话。

0 投票
0 回答
72 浏览

php - 模糊搜索逻辑

我正在开发我的 PHP 网页中的搜索功能,用户可以输入关键字进行搜索。问题是我需要一个可以捕获不同排列和位置的关键字的模糊搜索逻辑,因此我使用的是全文索引并且已经安装了全文目录。

我试图在 SQL SERVER MANAGEMENT STUDIO 2012 上执行查询,它可以工作,并且出现的结果就是我正在寻找的结果。但是,当我在我的 PHP 代码中添加查询时,它不起作用并且没有结果出现。

这是我使用 CONTAINS 的查询:

这是我使用 FREETEXT 的代码:

0 投票
1 回答
268 浏览

sql-server - SQL Server 全文搜索 空目录

我正在尝试在 Azure 的 SQL Server 上运行全文搜索。

我的数据在一个varbinary(max)包含数据的所有列中。数据是html字符串。

SearchableData列的计算和填充使用:

CONVERT(VARBINARY(MAX),[Title] + [Body])

进行选择和转换会产生数据。

我想利用 SQL Server 的内置 html 过滤器。

如果我执行以下操作,我可以搜索并且一切正常,但是,没有过滤器:

但是,我希望能够利用 .html 过滤。

我创建了以下内容:

但是目录是空的,我没有从简单的搜索中得到任何结果

我一直在使用这两个指南:

动手在 SQL Server 中进行全文搜索

如何使用 Microsoft SQL Server 在 HTML 文档上实现全文搜索

0 投票
2 回答
1094 浏览

c# - 带有子实体的 EF Core 自由文本

EF Core 2.1 添加FREETEXT. 但是,我有一个不同的问题,使用 EF Core 2.2:EF Core 是否FREETEXT支持子实体?

Name 是一个拥有的实体(值对象),非常适合搜索:

地址是一个子实体:

此搜索工作正常:

此搜索不会,因为最终术语无法翻译为 SQL:

有什么办法可以解决这个问题,还是我需要使用 SQL 函数?我尝试过使用Select()语句,但也无法完全转换为 SQL。

0 投票
0 回答
41 浏览

mysql - 如何安全地存储自由文本用户的答案

我们正在我们的 iOS 和 Android 应用程序中创建 3 个不同的问卷。用户必须用自由文本回答问题。大多数信息是医疗敏感数据。完成问卷后,用户应该可以选择将他/她的答案下载到 pdf 中并保存答案,当他们打开其中一份问卷时可以查看这些答案。我们正在使用 MYSQL 将数据存储到我们的服务器中。

在我们的服务器上加密用户文本数据的最佳方法是什么?

我们应该将答案存储在用户的手机上吗?

0 投票
1 回答
53 浏览

sql-server - SQL Server FTS 索引正确的关键字但不返回这些关键字的结果

我创建了一个 FTS 目录,它为名为 Articles 的表的 Title 列编制索引。分词器语言设置为荷兰语。

文章标题为“Contactgegevens Wijkteams 2019”。我的搜索词是“contactgegevens”,它是荷兰语的“联系方式”。尽管我已经检查了已成功索引正确表/列中的完整单词的索引关键字,但该单词可能会被拆分为“contact”和“gegevens”。

搜索词:

使用自由文本:

如果我FREETEXT在 where 子句中使用,我确实找到了结果,但它出现在大约 300 行的末尾附近。大多数行的标题列中没有这个词,甚至没有意思相近的词。

使用自由文本表:

使用FREETEXTTABLE,我得到的结果要少得多,但其中没有一个包含关键字:'contactgegevens' 或它的变体。

使用包含表:

CONTAINSTABLE似乎返回非常相似的结果FREETEXTTABLE

如前所述,我使用以下查询检查了索引关键字:

并且该关键字被索引为正确的表/列并查看接近此结果的记录我可以看到它索引了与我正在寻找的文章标题相关的其他单词。

我希望能够搜索诸如“Contactgegevens Wijkteams 2019”之类的短语,并将具有该确切标题的文章显示在列表顶部,但事实并非如此。在某些情况下,它根本不会出现在搜索结果中。

我在这里想念什么?

0 投票
1 回答
374 浏览

sql-server - 全文搜索条件“,”中“,”附近的语法错误

这是我的存储过程。当我在@BusinessName 中传递“,”时,出现错误:全文搜索条件“,”中“,”附近的语法错误。如何解决此错误?

0 投票
0 回答
32 浏览

sql-server - 我对 Microsoft Docs "FREETEXT (Transact SQL)" 中的示例代码有疑问

我想使用 Freetext 语句在 SQL Server 2016 中搜索一个短语,而不是基于 Microsoft Docs 中的此示例代码分隔单词。(https://docs.microsoft.com/en-us/sql/t-sql/queries/freetext -transact-sql?view=sql-server-2017 )

它是在自由文本中使用“-”的定义吗?看起来“高性能”和“高性能”在结果上没有区别。

0 投票
4 回答
261 浏览

sql-server - SQL Server 2012 全文搜索匹配结果

我想知道是否有一种方法可以使用FREETEXT.

例如:

我希望能够查看 column_name 中文本的哪些部分触发了与“搜索词”的匹配,因为FREETEXT返回的记录中搜索的列不仅仅是/部分中所述的搜索词模式匹配。FREETEXTFREETEXTTABLE

我知道 usingFREETEXTTABLE可以返回排名和键,但如果可能的话,我需要知道哪些实际术语触发了匹配。

谢谢

0 投票
0 回答
51 浏览

sql-server - 在 sql-server 中执行自由文本时使用“\+”关键字有什么用?

我们的一位高级开发人员在执行自由文本搜索时使用“+”。我无法理解它的用途。

我试图删除他使用“+”关键字的条件,但结果没有变化。

在删除条件之前尝试了解使用“/+”关键字的原因。