Java Android Sqlite将两个表查询到一个arraylist中
我有以下情况:Java Android Sqlite将两个表查询到一个arraylist中,java,android,sqlite,Java,Android,Sqlite,我有以下情况: Android sqlite数据库有两个表: 表1--1:N--2 表1 - int id (PK) - text field2 - text field3 - text field N… 表2 内部id(主键) int t1_id(FK) 实景3 实数域N 接下来,我将介绍以下Android java结构: Class Table1 { int id; String field2; String field3; String fieldN…; ArrayList<
- Android sqlite数据库有两个表: 表1--1:N--2
- int id (PK)
- text field2
- text field3
- text field N…
表2
- 内部id(主键)
- int t1_id(FK)
- 实景3
- 实数域N
Class Table1 {
int id;
String field2;
String field3;
String fieldN…;
ArrayList<Table2> atable2;
}
Class Table2 {
int id;
int t1_id;
double field3;
double fieldN…;
}
public ArrayList<Table1> atable1 = new ArrayList<Table1>();
问题是arraylist atable1中的arraylist atable2必须根据表2中的字段t1_id(table2.t1_id=table1.id)进行选择
所以任何人都可以帮助我构建一种高效的查询形式(针对Android sqlite)来获取这些数据,包括来自表2的数据
提前谢谢
致以最良好的祝愿
PS在移动设备上,没有有效的方式将350000条记录加载到内存中 但是您不需要这样做,因为您将无法同时在屏幕上显示所有这些内容
将应用程序更改为仅动态加载屏幕上当前可见对象的数据。您将使用什么查询?为什么这对您来说不够有效?首先,我得到了所有区域:openDatabase();Cursor cur=myDataBase.rawQuery(“从table1“+”中选择*,其中table1.field2类似“意大利”,null);然后将所有记录复制到arraylist atable1下一步,我做一个for循环以获取atable1:openDatabase()中的atable2 arraylist for(int I=0;I
select * from table1 where table1.field2 = ‘Italy’;