FTS4 SQLITE 中的外部内容

Posted

技术标签:

【中文标题】FTS4 SQLITE 中的外部内容【英文标题】:External content in FTS4 SQLITE 【发布时间】:2015-03-20 04:27:42 【问题描述】:

我有一个 VIEW view_for_search_unit 和一个 FTS4 表 FTS_table_search_unit。我使用以下命令将来自view_for_search_unit 的数据插入到 FTS 表中:

INSERT INTO FTS_table_search_unit(docId, name, description)
SELECT id, name, description FROM view_for_search_unit

在我使用这个检查 FTS 表中的数据后:

SELECT *FROM FTS_table_search_unit

它有 1000 条完美记录(我使用假数据)。但是,当我使用 MATCH FTS 中的函数:

SELECT * FROM FTS_table_search_unit WHERE FTS_table_search_unit MATCH 's*'

我检索了 1000 条记录,但结果中的所有列都是 NULL。问题是什么?我无法理解,因为FTS_table_search_unit 中有数据。

【问题讨论】:

谢谢西蒙,因为我的英语很差。 【参考方案1】:

尝试用 docid 代替 *:

SELECT docid FROM FTS_table_search_unit 
WHERE FTS_table_search_unit 
MATCH 's*'

SELECT v.* FROM FTS_table_search_unit s
INNER JOIN view_for_search_unit v ON s.docid = v.id
WHERE FTS_table_search_unit MATCH 's*';

【讨论】:

以上是关于FTS4 SQLITE 中的外部内容的主要内容,如果未能解决你的问题,请参考以下文章

如何停止。在 SQLite FTS4 中被视为分隔符

SQLite3 FTS3/FTS4 匹配信息示例

SQLite3 FTS4、MATCH 和 Android

sqlite fts4在使用group by时不能使用偏移功能

需要调整我的 FTS4 SQLite 查询

如何增加 Sqlite FTS4 片段大小