如何使用模糊查找来查找SQL中的句子?

2023-11-29

搜索项=['网站上的 ISBN 号'] 变量(列):MySQL表中的句子。它由许多不同的句子组成。

我想找的句子是 “自动链接功能随 Google 最新的工具栏一起提供,如果在 Amazon.com 网站上找到一本书的 ISBN 编号,它会在网页中提供指向 Amazon.com 的链接。”

但是,当我使用以下语句时:

SELECT * FROM testtable
where Sentence like "%ISBN number on site%" ;

我无法得到结果。这是因为搜索词(“ISBN number on site”)与句子相比缺少一个单词(“the”)。

如何改变我的陈述以获得我想要的句子?谢谢。 假设我们不更改搜索词=['ISBN number on site']


这不是一个简单的问题。你最好的选择是使用某种类型的全文检索。全文搜索可以配置为包含停用词(搜索中省略的单词 - 例如单词the)并且也可以有最小字长限制(小于特定字符长度的单词也会从搜索中省略。

但是,如果您只是使用

SELECT * FROM testtable
WHERE MATCH (sentence)
AGAINST ('ISBN number on site');

然后MySQL不仅会返回包含您要查找的值的记录,还会返回仅包含某些单词且顺序不同的记录。您展示的可能是排名最高的之一,但不能保证它会是排名最高的。

您可能想使用布尔全文搜索并前置+对每个搜索词强制 MySQL 仅返回包含所有搜索词的记录:

SELECT * FROM testtable
WHERE MATCH (sentence)
AGAINST ('+ISBN +number +on +site' IN BOOLEAN MODE);

But, on应该是一个停用词(它位于默认的 stipword 列表中)或者应该比最小单词长度短,因此应该从搜索表达式中省略(您将不会得到任何结果):

SELECT * FROM testtable
WHERE MATCH (sentence)
AGAINST ('+ISBN +number +site' IN BOOLEAN MODE);

我知道这需要更改搜索表达式,但是这将使用 MySQL 的内置功能为您带来最佳结果。

另一种方法是使用其他全文搜索引擎,例如sphinx为您执行搜索。

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

如何使用模糊查找来查找SQL中的句子? 的相关文章

  • 错误代码:1305。函数或过程不存在

    因此 我在 MySQL 中创建一个函数 然后尝试向用户授予使用该函数的权限 但我无法这样做 这就是我正在做的 DELIMITER USE rxhelp36 scbn DROP FUNCTION IF EXISTS businessDayDi
  • MySQL 错误 1172 - 结果包含多行

    在存储过程中运行查询时 我从 MySQL 收到此错误 错误代码 1172 结果包含多行 我理解错误 我正在做一个SELECT INTO var list 因此查询需要返回单行 当我使用LIMIT 1 or SELECT DISTINCT 错
  • MySQL 排序顺序 - 排序规则?

    我在对 MySQL 中的 char 字段进行排序时遇到困难 问题是重音字符与非重音字符混淆 例如 Abc bd Acc 我认为这可能与整理有关 所以我将表格的排序规则更改为utf8 ut8 bin 看完之后这个帖子 https stacko
  • 实现软删除的最佳方法是什么?

    目前在做一个项目 我们要对大部分用户 用户角色 实现软删除 我们决定添加一个is deleted 0 数据库中每个表的字段并将其设置为 1 如果特定用户角色点击特定记录上的删除按钮 现在为了将来的维护 每个SELECT查询需要确保它们不包含
  • 让登录更安全

    我已使用此代码进行管理员登录 仅当用户输入正确的用户名和密码时才应打开loginhome php 但后来我意识到这根本不安全 任何人都可以直接访问 mywebsite loginhome php 而无需登录 注销后 可以使用后退按钮打开 l
  • PHP MySql 百分比

    我的问题是关于百分比 我不是专家 所以我会尽力以更好的方式进行解释 我的 mysql 服务器中有一个表 假设有 700 条记录 如下所示 Name country language Birth Lucy UK EN 1980 Mari Ca
  • 在 SQL Server 上执行分页的最佳方式是什么?

    我有一个数据库超过200万记录 我需要执行分页以在我的 Web 应用程序上显示 该应用程序每页必须有 10 条记录DataGrid 我已经尝试使用ROW NUMBER 但是这种方式会选择所有 200 万条记录 然后只得到 10 条记录 我也
  • 如何在MYSQL中将整个字符串小写并保持第一个大写[重复]

    这个问题在这里已经有答案了 我的表栏目 我预期的输出会在列中发生变化 Smith Allen Doyle Dennis Baker Waker 这是我尝试过的 但不起作用 UPDATE TABLE employee SET last nam
  • 内置函数将每个单词的第一个字母大写

    如果 SQL Server 中已存在此类函数 我不想为此创建自定义函数 输入字符串 This is my string to convert预期输出 This Is My String To Convert SET ANSI NULLS O
  • 如何通过 SQL 表关联 SQL 中的实体

    我是数据库设计的初学者 我需要为项目创建数据库 我可以用面向对象的术语解释我想要做什么 值得庆幸的是 数据库专家会很友善地向我解释如何在数据库方面处理这个问题 我想创建一个与位置实体 州 城市 有关系的用户 ID 名称 实体 所以在编程语言
  • MySQL/PDO::quote() 尽管使用 PDO::PARAM_INT 参数,但仍在整数周围加上引号

    无论我传递给什么值 数据类型对 它都会出现 pdo gt quote value type 它总是将其引用为字符串 echo pdo gt quote foo PDO PARAM STR foo as expected echo pdo g
  • PHP MySQL 使用选项/选择 HTML 表单标签进行多重搜索查询

    我正在尝试使用两个搜索字段设置基本的 MySQL LIKE 搜索 我不想拥有它 所以它有多个可选搜索字段 例如if isset POST city isset POST name 我不知道如何用 HTML 来做到这一点
  • 如何检测Mysql/innodb中的死锁?

    我知道在 Innodb 中使用事务时不可避免地会发生死锁 并且如果应用程序代码正确处理死锁 它们是无害的 正如手册所说 只需再试一次 所以我想知道 如何检测死锁 死锁是否会发出一些特殊的 mysql 错误号 如果重要的话 我正在使用 PHP
  • 如何识别拼写不同的相似单词

    我想从数据库中过滤掉重复的客户名称 一位客户可能有多个同名但拼写差异不大的系统条目 这是一个示例 名为 Brook 的客户可能有 3 个系统条目 有了这个变化 布鲁克 贝尔塔 布鲁克 贝尔塔 比鲁克 贝尔塔 假设我们将此名称放入一个数据库列
  • SELECT max(x) 返回 null;我怎样才能让它返回0?

    运行以下命令时如何返回 0 而不是 null SELECT MAX X AS MaxX FROM tbl WHERE XID 1 假设没有XID 1的行 or SELECT coalesce MAX X 0 AS MaxX FROM tbl
  • Mysql插入表后不显示右单引号(’)

    我有一个名为 测试 的表 我插入了一行 其中包含unicode字符右单引号 0x2019在名称字段中 SQL insert into Testing values Sno Name Address insert into Testing v
  • 在 DataView 的 RowFilter 中选择 DISTINCT

    我试图根据与另一个表的关系缩小 DataView 中的行范围 我使用的 RowFilter 如下 dv new DataView myDS myTable id IN SELECT DISTINCT parentID FROM myOthe
  • SQL 最近日期

    我需要在 php 中获取诸如 2010 04 27 之类的日期作为字符串 并在表中找到最近的 5 个日期 表中的日期保存为日期类型 您可以使用DATEDIFF http dev mysql com doc refman 5 1 en dat
  • 我是否需要在外键上指定 ON DELETE NO ACTION?

    我有以下与 SQL Server 2012 一起使用的 DDL CREATE TABLE Subject SubjectId INT IDENTITY 1 1 NOT NULL Name NVARCHAR 50 Not NULL CONST
  • 是否可以引用同一个表中的不同列?

    如果博客有一个 类别 表 如下所示 CREATE TABLE categories id INTEGER PRIMARY KEY AUTO INCREMENT parent id INTEGER NOT NULL name VARCHAR

随机推荐

  • Sql Server 2005 上的报告服务 2008

    我可以将 Reporting Services 2008 与 SQL Server 2005 数据库一起使用吗 我是否需要两个许可证 适用于 SQL Server 2008 和 SQL Server 2005 我是否需要两个实例 SQL S
  • 在java中编写哈希函数的最佳实践是什么?

    我想知道在 java 中编写 hashCode 方法的最佳实践是什么 可以找到很好的描述here 有那么好吗 这是引用自有效的Java第二版 第 9 项 始终覆盖hashCode当你覆盖equals 虽然本项中的配方产生了相当好的散列函数
  • Android通过firebase推送Notification(服务器端)

    我正在尝试使用 firebase 云消息传递系统从服务器向我的 Android 设备发送推送通知 我能够成功注册我的设备 并且也为我的设备生成了令牌 我无法使用以下脚本向我的设备发送通知
  • 使用 new 分配内存返回相同的内存地址

    class abc int x int main abc A new abc cout lt lt static cast
  • 当没有剩余内存时,.Net 和 Bitmap 不会被 GC 自动处理

    我想知道 NET 中为位图分配的内存的分配和处置是如何工作的 当我在函数中的循环中创建大量位图并连续调用它时 它将一直工作 直到某个时候位图无法分配内存 给出指定大小的 无效参数 异常 如果我在垃圾收集器工作时调用垃圾收集器 使用以下代码
  • 如何解码 BLE 广告数据

    扫描 BLE 设备后 我调用以下方法 void centralManager CBCentralManager central didDiscoverPeripheral CBPeripheral peripheral advertisem
  • 将两个日期之间的所有日期作为颤振日期范围选择器中的列表返回

    我只从 flutter date range picker 中得到两个日期 但我想要两个选定日期之间的日期列表 感谢您的回答 尝试以下操作 List
  • 如何使用同一应用程序查找附近的 iOS 设备(GPS 位置)

    我想创建一个应用程序 允许用户使用登录到同一应用程序的 GPS 坐标查找附近其他用户的位置 它还可以跟踪正在移动的设备 登录到同一应用程序 的位置在车里 有人能给我概述一下如何实现这一目标吗 有没有免费的 API 可以用来完成这个任务 Da
  • 如何将 png 与 alpha/透明度实时加入帧中

    我正在 OpenCV android 2 4 11 的示例下工作 它使用相机检测面部 我没有在找到的脸上画一个矩形 而是尝试在脸上放置一个遮罩 png 图像 但为了在脸上显示图像 png 图像带有黑色背景 其中有透明度 FdActivity
  • “CL.exe”退出,代码为-1073741515

    我使用的是 Windows 7 64 位机器 我下载了 VC 的 Express 版本和 Windows SDK 我需要在 64 位编译器中编译我的代码 编译时 我收到以下错误 CL exe 退出 代码为 1073741515 这个错误是什
  • 键盘覆盖了我视图底部的文本字段

    我已经搜索过 here 仅当键盘覆盖输入字段时向上移动视图 here 当键盘快速出现时移动文本字段 here 当键盘存在时如何使 UITextField 向上移动 和这里 https developer apple com library
  • Zend_Auth 最佳实践

    我的目标是要求某些页面登录 我正在使用 Zend Framework MVC 并且我正在尝试查找有关最佳实践的示例 关于我正在寻找的内容的一些注释 我希望未登录的用户获得登录框 然后在经过身份验证后返回到页面的登录版本 我想使用依赖注入 并
  • 如何将 LPCSTR 字符串转换为 LPCTSTR 字符串?

    我正在尝试转换LPCSTR串入LPCTSTR细绳 我想连接两个字符串 当我尝试这样时 LPCTSTR str1 L Raja LPCSTR str2 Kumar wcscat s str1 LPCTSTR str2 我发现像 Raja 这样
  • Matlab imshow 无法正确绘图,但 imshowpair 可以正确绘图

    我已经导入了图像 我已将其解析为双精度并对其进行了一些过滤 当我绘制结果时imshow 双像太暗 但是当我使用imshowpair绘制原始图像和最终图像 两个图像都正确显示 我尝试过使用uint8 im2uint8 乘以 255 然后使用这
  • 按位置从 data.table 中提取列作为向量

    如何按位置从 data table 中提取列作为向量 以下是我尝试过的一些代码片段 DT lt data table x c 1 2 y c 3 4 z c 5 6 DT x y z 1 1 3 5 2 2 4 6 我想使用列位置获得此输出
  • JAVA EE CDI 范围、EJB 和托管 Bean 序列化

    对作用域 ejb 和托管 bean 有一些疑问 范围 javax enterprise context ApplicationScope javax enterprise context SessionScope 是否仅适用于 EJB 或者
  • 如何在Python中输入矩阵(二维列表)?

    我尝试创建此代码来输入 m n 矩阵 我本来想输入 1 2 3 4 5 6 但代码产生 4 5 6 4 5 6 当我输入其他 m n 矩阵时 也会发生同样的情况 代码会生成一个行相同的 m n 矩阵 也许你可以帮助我找出我的代码有什么问题
  • 不使用 Oracle 客户端的 Python Oracle DB Connect

    我正在尝试用 python 构建一个应用程序 它将使用安装在企业服务器中的 Oracle 数据库 并且我正在开发的应用程序可以在任何本地计算机中使用 是否可以在Python中连接到oracle DB 而无需在存储和执行python应用程序的
  • 访问共享日历(例如通过 Office 365 REST API 访问会议室)

    我正在使用 Office 365 REST api 访问我帐户的日历 我想要访问我的帐户有权访问的所有日历 特别是 Office 365 界面的 其他日历 部分中显示的会议室日历 现在 如果我查询 https outlook office3
  • 如何使用模糊查找来查找SQL中的句子?

    搜索项 网站上的 ISBN 号 变量 列 MySQL表中的句子 它由许多不同的句子组成 我想找的句子是 自动链接功能随 Google 最新的工具栏一起提供 如果在 Amazon com 网站上找到一本书的 ISBN 编号 它会在网页中提供指