Как запросить таблицу внешнего контента FTS4, но вернуть дополнительные столбцы из исходной таблицы контента
Я создаюТаблица внешнего контента FTS4 в SQLite вот так:
CREATE TABLE t2(id INTEGER PRIMARY KEY, col_a, col_b, col_text);
CREATE VIRTUAL TABLE fts_table USING fts4(content="t2", col_text);
Я использую таблицу внешнего контента, поэтому мне не нужно хранить повторяющиеся значенияcol_text
вfts_table
, Я только индексируюcol_text
так какcol_a
а такжеcol_b
не нужно индексировать
Тем не менее, когда я делаю запросfts_table
как это
SELECT * FROM fts_table WHERE fts_table MATCH 'something';
У меня нет доступа кcol_a
а такжеcol_b
из таблицы содержимогоt2
, Как вернуть все эти столбцы (col_a
, col_b
, col_text
) из одного запроса FTS?
Обновить
Я пытался использоватьnotindexed=column_name
вариант как в
CREATE VIRTUAL TABLE fts_table USING fts4(content="t2", col_a, col_b, col_text, notindexed=col_a, notindexed=col_b);
Это должно работать для некоторых людей, но я использую его в Android иnotindexed
опция не поддерживается до SQLite 3.8, которую Android не поддерживает доВерсия Android 5.x, И мне нужно поддерживать Android 4.x. Я обновляю этот вопрос, чтобы включить тег Android.