Запрашиваете из нескольких таблиц в Android SQLite? - PullRequest
1 голос
/ 12 июля 2011

Мне было интересно, возможно ли (должно быть) запрашивать несколько таблиц одновременно (несколько одновременно) в SQLite. По сути, у меня есть несколько таблиц с одинаковыми столбцами, но данные в них просто организованы по той таблице, в которой они находятся. Мне нужно иметь возможность использовать SELECT для получения данных из таблиц (я слышал, что UNION может помочь ), который соответствует условию, затем сгруппируйте данные по таблице, в которой он находится.

Другими словами, возможно ли что-то подобное?

SELECT * FROM table1,table2,table3,table4,table5,table6 WHERE day=15 GROUP BY {table}

Я бы предпочел не прибегать к необходимости запрашивать таблицы по отдельности, так как тогда у меня была бы куча Cursors, через которую мне пришлось бы проходить вручную, и это было бы сложно, когда у меня был только один SimpleCursorAdapter? Если SimpleCursorAdapter не может иметь несколько Cursor с?

Спасибо.

РЕДАКТИРОВАТЬ: Структура моих таблиц:

Main Table - contains references to subtables in a column "tbls"
             and meta-information about the data stored in the subtables

    Subtable - contains reference to subsubtables in a column "tbls"
               and meta-information about the data stored in the
               subsubtables

        Subsubtable - contains the actual entries

По сути, эти таблицы упрощают организацию иерархической структуры данных. Я полагаю, что вместо суб-таблиц я мог бы сохранить actual entries в суб-таблице, но добавить префикс и иметь отдельную таблицу для мета-информации. Просто кажется, что будет сложнее удалить / обновить структуру, если мне нужно будет удалить уровень в этом наборе данных.

Ответы [ 2 ]

2 голосов
/ 13 июля 2011

Вы можете создать представление на основе ваших таблиц, запрос вашего представления - объединение ваших таблиц.

create view test as select * from table1 union select * from table2

теперь вы можете фильтровать данные как хотите для получения дополнительной информации проверьте union & view

http://www.w3schools.com/sql/sql_union.asp

http://www.w3schools.com/sql/sql_view.asp

0 голосов
/ 13 июля 2011

В конце концов, я решил отказаться от множества подтаблиц и вместо этого добавить еще одну колонку, как предлагали Тим и Самуил. Вероятно, это будет более эффективным, чем объединение SELECT s с UNION.

...