Можете да използвате CursorJoiner, за да получите нещо подобно на сливане на два курсора в един. CursorJoiner всъщност не извършва сливане. Докато го премествате, той премества оригиналните два курсора, така че редовете им да съвпадат в определената колона(и). Ето защо е необходимо и двата курсора да бъдат сортирани по колоните, които ще се използват в обединението.
Връзка към документацията:http://developer.android.com/reference/android/database/CursorJoiner.html
Пример за код:
CursorJoiner joiner = new CursorJoiner(userCursor, new String[]{ "user_id" }, postCursor, new String[] {"user_id"});
while (joiner.hasNext()) {
CursorJoiner.Result result = joiner.next();
switch (result) {
case LEFT:
// don't care about this case
break;
case RIGHT:
// nor this case
break;
case BOTH:
// here both original Cursors are pointing at rows that have the same user_id, so we can extract values
int postId = postCursor.getInt(...);
String headline = postCursor.getString(...);
int userId = userCursor.getInt(...);
String userName = userCursor.getString(...);
// do something with above values
break;
}
}