sql - 如何在 FTS SQL 数据库中选择只匹配部分查询的条目?
问题描述
CREATE VIRTUAL TABLE TEST USING FTS5(SomeText);
INSERT INTO TEST(SomeText) VALUES
('Covid 19');
SELECT SomeText
FROM TEST
WHERE SomeText MATCH 'sars covid 19';
=> 没有结果
我如何确保这也返回带有“Covid 19”的列?是否有考虑到这一点的扩展或函数来保持 sql 命令简单?
小提琴:https ://dbfiddle.uk/?rdbms=sqlite_3.27&fiddle=defbd331c8469e05ea6a107df10738a2
解决方案
我认为在这种情况下使用的语法是“Covid 19 OR sars”。
例如 :
CREATE VIRTUAL TABLE TEST USING FTS5(SomeText);
INSERT INTO TEST(SomeText) VALUES
('Sars'),
('Covid 19'),
('Covid 19 but also Sars'),
('Some other stuff');
SELECT SomeText
FROM TEST
WHERE SomeText MATCH 'Covid 19 OR sars';
返回以下结果:
Sars
Covid 19
Covid 19 but also Sars
您可以在此处查看以下小提琴
另请参阅:https ://www.sqlitetutorial.net/sqlite-full-text-search/here
推荐阅读
- ruby-on-rails - 使用正则表达式数组在 Ruby 中使用“gsub”转换字符串
- ruby-on-rails - Rails 环境坏了 - 需要帮助修复
- flutter - 材质按钮 disabledColor 未在 Flutter 中显示输入的颜色
- python - 部分自定义损失函数不可微
- protractor - 升级到 webdriver-manager 12.1.4 后,directConnect 选项不起作用
- c# - 在 Caliburn.Micro、WPF 中单击时阻止 UI
- fortran - 尝试交换行以减少行梯形时发现问题
- omnet++ - 车载节点收不到电波短信
- ios - 自定义 Siri 意图在 iOS 12.2 中不起作用,而在 12.01 中运行良好
- php - 无法使用 Selenium 访问 .html 页面?