【问题标题】:How to fuzzy search single sqlite3 field如何模糊搜索单个 sqlite3 字段
【发布时间】:2018-04-29 12:44:08
【问题描述】:

我在一个基本的 CRUD 应用程序中有一堆行,我想让用户按标题搜索。 SQLite3 有全文搜索解决方案,但是否建议也将其用于非全文搜索,还是有更简单的方法?例如,PostgreSQL 有 trigrams,它非常适合这个简单的用例,也许 SQLite3 也有类似的东西。

我觉得这个问题以前一定有人回答过,但是我找不到这样的答案,所以如果这是重复的,我很抱歉。

【问题讨论】:

    标签: search sqlite fuzzy-search


    【解决方案1】:

    Spellfix1虚拟表可以配合FTS在sqlite中实现模糊全文搜索。这允许搜索可能拼写错误的单词,(据我所知)sqlite 的 FTS 本身不支持。

    【讨论】:

      【解决方案2】:

      FTS 非常适合此用例。您可以在单个列或整个表上使用MATCH 运算符。见https://www.sqlite.org/fts3.html

      【讨论】:

      • 我在 sqlite FTS3/4/5 中没有看到任何模糊词类型的东西。从提到三元组听起来这就是 OP 想要的(我也是如此)。我错过的地方是否支持模糊匹配?
      • 不模糊搜索
      • 我发现你的答案是在寻找“模糊逻辑搜索”,它曾经在 ACCPAC Plus 中,这是一个 b-trieve 数据库。在您的链接中,它谈到了 FTS3 和 FTS4。链接中没有解释 FTS 代表什么。是“模糊表搜索”吗?
      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-06-14
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-07-26
      • 2020-01-11
      • 2015-09-20
      相关资源
      最近更新 更多