Подтвердить что ты не робот

Лучший способ присоединиться к таблицам с использованием sqlite в android

Я пытаюсь найти лучший способ сделать простое соединение таблицы в моих двух таблицах, используя базу данных sqlite в приложении Android. Самый простой способ использовать CursorJoiner или есть ли более простой способ?

4b9b3361

Ответ 1

В реализации SQLiteDatabase и SQLiteQueryBuilder вы увидите, что можно передать таблицы, которые хотите присоединиться к аргументу table query, даже если документация подразумевает, что он будет принимать только одно имя таблицы. Документация для SQLiteQueryBuilder более понятна и даже предлагает такие вещи, как foo, bar или foo LEFT OUTER JOIN bar ON (foo.id = bar.foo_id).

Ответ 2

Если вы хотите использовать стороннюю библиотеку, я рекомендую использовать Active Android

https://github.com/pardom/ActiveAndroid

используя это, вы можете объединить таблицы, подобные этому

From query = new Select()
    .from(Foo.class)
    .innerJoin(Bar.class)
    .on("Foo.Id=Bar.Id");

вы даже можете вернуть курсор для использования в загрузчиках

Cursor cursor = Cache.openDatabase().rawQuery(query.toSql(), query.getArguments());

подробнее здесь