android中SQLite查询的问题
我有一个具有两种视图类型的listView。对于第一个视图类型,我从一个SQLite表中获取数据,对于其他视图类型,我从另一个表中获取数据。我使用内部连接将这两个表连接起来,如下所示:android中SQLite查询的问题,android,sqlite,inner-join,Android,Sqlite,Inner Join,我有一个具有两种视图类型的listView。对于第一个视图类型,我从一个SQLite表中获取数据,对于其他视图类型,我从另一个表中获取数据。我使用内部连接将这两个表连接起来,如下所示: static { sProfileWithHobbiesBuilder = new SQLiteQueryBuilder(); sProfileWithNewsBuilder.setTables( UsersInfoEntry.TABLE_NAME
static {
sProfileWithHobbiesBuilder = new SQLiteQueryBuilder();
sProfileWithNewsBuilder.setTables(
UsersInfoEntry.TABLE_NAME + " INNER JOIN " +
HobbiesEntry.TABLE_NAME + " ON " +
HobbiesEntry.TABLE_NAME + "." + HobbiesEntry.USER_ID + " = " +
UsersInfoEntry.TABLE_NAME + "." + UsersInfoEntry.USER_ID);
}
一切都很好,但是。。。
如果第二个表为空,则getColumnCounts返回0,然后不显示任何内容。。。
如果我需要下一个结果:如果第二个表为空,只需显示第一个viewType的信息
我将很高兴有任何想法来解决这个问题 您可以使用
左侧外部联接
而不是内部联接
。左外部联接
将保留第一个表中的列,即使第二个表无法在指定的联接列上联接(因为没有匹配的记录)
甚至显示了一个
左外连接的示例
那么左连接呢
或者我缺少什么吗?@ci_u。你的意思是用左连接替换内部连接?是的,这不起作用吗?可能是左外连接
,这里甚至有一个示例:@ci_u.将在minnute中尝试