我可以在 R` 中使用 sqlite 的 FTS 扩展吗?

Can I use the FTS extension for sqlite from within R`?

Sqlite 支持 full text special tables。是否可以在 R 中使用这些功能,例如来自 RSQLite?

通过试错找到答案:

library(RSQLite)
dbGetQuery(con, "pragma compile_options;")

这显示 "ENABLE_FTS3" 和 "ENABLE_FTS5"。所以似乎扩展是默认激活的。

小测试示例:

con <- dbConnect(SQLite(), ":memory:")
dbExecute(con, "CREATE VIRTUAL TABLE mail USING fts3(subject, body);")
dbExecute(con, "INSERT INTO mail(docid, subject, body) VALUES(1, 'software feedback', 'found it too slow');")
dbExecute(con, "INSERT INTO mail(docid, subject, body) VALUES(2, 'software feedback', 'no feedback');")
dbExecute(con, "INSERT INTO mail(docid, subject, body) VALUES(3, 'slow lunch order',  'was a software problem');")
dbGetQuery(con, "SELECT * FROM mail WHERE subject MATCH 'software';")

最后查询 returns 第 1 行和第 2 行。

不错!