光标JOIN具有相同的列名称

时间:2014-02-21 22:23:31

标签: android android-cursor

如何访问具有相同名称的列?我尝试过做cursor.getString(cursor.getColumnIndexOrThrow("table.column")),但似乎无法正常工作

1 个答案:

答案 0 :(得分:7)

您可以使用别名,即

db.rawQuery("SELECT column1 AS c1 FROM table");

然后你可以使用:

cursor.getColumnIndex("c1");

显然,同样适用于JOIN的字段。 欢呼声。

修改

join子句的示例:

db.rawQuery("SELECT t1.columnX AS c1, t2.columnY as c2 FROM table1 t1 INNER JOIN table2 t2 ON t1.A = t2.B");

然后,您可以简单地使用别名,无论它属于哪个表:

cursor.getColumnIndex("c2") should return 1.