Sqlite INNER JOIN表

时间:2014-09-15 06:18:12

标签: android sqlite

我有2个表:表1 {col11,col12,col13,col14,col15}和表2 {col21,col22}。并且2 Table1.col14包含Table2.col21(Table1.col14 == Table2.col21)。

我想选择Table1的所有列。但是Table2.col14列被Table2.col21替换。 我的查询是什么?

请帮助。

1 个答案:

答案 0 :(得分:0)

使用querybuilder很棒。

    SQLiteQueryBuilder queryBuilder = new SQLiteQueryBuilder();
    queryBuilder.setTables(TABLE1 + " JOIN "
            + TABLE2 + " ON (" + TABLE1 + "." + JOINCOLUMN1 + " = "
            + TABLE2 + "." + JOINCOLUMN2 + ")");
    queryBuilder.appendWhere(TABLE1.COL1 + " = 'SOME VALUE'".....);

    String[] projection = { TABLE1+"."+COL1, TABLE1+"."+COL2...... };

    Cursor cursor = queryBuilder.query(db, projection, null, null, null,
            null, null);

您甚至可以使用重载的“.query(....)”方法获取不同的值。请检查此official documentation