2010-07-20 3 views
0

Я хотел бы сделать внутреннее соединение в моей базе данных в своем приложении для Android. Возможно ли это? Как насчет левого соединения? Я знаю, что существует сборщик курсоров, но документация не совсем понятна. Может ли кто-нибудь дать дополнительную информацию?Как сделать внутреннее соединение в Android?

Thanks

ответ

1

Вы будете делать соединения в самом выражении SQL. Это задокументировано здесь: http://www.sqlite.org/lang_select.html. Поддержка левых объединений, но не правильное объединение (что не имеет значения - вы просто переключаете аргументы).

+0

спасибо я буду проверить это позже – 2Real

+0

спасибо я понял, как сделать это с сырым запрос не может поверить, что я не видел его раньше – 2Real

+0

Ха-ха ... Я сказал это о многом другом ... «Не могу поверить, что я не видел его раньше!» :) SQL мощный, вы определенно хотите сохранить свою логику. Тем более, что весь результат будет сохранен в памяти в курсоре, поэтому чем больше вы можете отфильтровать раньше, тем лучше. – EboMike

2

Я использовал следующий сделать внутреннее соединение:

public Cursor innerJoin(Long tablebId) { 
    String sql = "SELECT table_a.field FROM table_a INNER JOIN routingtable ON table_a._id=routingtable.table_a_id WHERE routingtable.tableb_id = " + tablebId + ";"; 
    return database.rawQuery(sql, null); 
} 

Надеется, что это работает для вас

Смежные вопросы