数据库查询android sqlite

时间:2016-05-03 04:49:35

标签: android android-sqlite android-cursoradapter android-cursor

我遇到了一个需要进行复杂查询来获取游标的场景。不知道有可能。场景是: 数据库中有三个表。

 Table         Columns  
Table-1    _id, name, number, ....  
Table-2    _id, table1_id, col1, col2, ....  
Table-3    _id, table2_id, col1, col2, ....

在这些表中,当在表2中插入任何记录时,相应的table1 id将插入该记录中。对于table2,同样插入表3记录。

我希望CursorAdapter的光标显示表-3数据的列表视图。

Cursor cursor = getContentResolver().query(TABLE_3_NAME, null, null, null, null);

现在需要在此查询中添加表-1的选择和选择参数 在Android中可以吗?

2 个答案:

答案 0 :(得分:1)

您可以使用原始查询从各种表中获取。一个例子如下。

 Cursor mCursor = db.rawQuery("SELECT * FROM Table-1, Table-3 " +
                         "WHERE Table1.id = <Whatever selection args you want> " +
                         "GROUP BY Table1.id", null);

这只是一个例子。您必须根据您的要求进行更改。

答案 1 :(得分:1)

您可以编写SQL选择查询(即正常方式),并且可以使用rawQuery()方法执行。

例如:

Cursor cursor = db.rawQuery(selectQuery, null);