Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/234.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何从SQLite获取最近添加的三个数据_Java_Android_Sqlite - Fatal编程技术网

Java 如何从SQLite获取最近添加的三个数据

Java 如何从SQLite获取最近添加的三个数据,java,android,sqlite,Java,Android,Sqlite,我想从SQLite获取最后三个数据 我已经查询了从SQLite数据库获取所有数据的日期和时间 但是我想得到最后三个数据查询是 List<Company> companyList = new ArrayList<Company>(); String selectQuery = "SELECT * FROM " + COMPANY + " ORDER BY (" + KEY_CREATED_AT + ") DESC " ; 我只想获取最近添加的3个数据您可以在查询中使用l

我想从SQLite获取最后三个数据

我已经查询了从SQLite数据库获取所有数据的日期和时间

但是我想得到最后三个数据查询是

List<Company> companyList = new ArrayList<Company>();
String selectQuery = "SELECT  * FROM " + COMPANY + " ORDER BY (" + KEY_CREATED_AT + ") DESC " ;

我只想获取最近添加的3个数据

您可以在查询中使用
limit
,它将返回
n
n
是您要获取的行数)行


只需在queryYou已经创建了date字段中使用limit。只要使用limit with order by created date desc.就可以使用任何其他技术来获取三个数据,比如使用for loop或任何东西,如果我获取所有数据以及所有这些for loop
List companyList 1=new ArrayList();对于(int i=companyList.size()-1;i>companyList.size()-4;i--){companyList.add(companyList.get(i))
第一次它得到3个数据,但现在这不起作用@ADMSqlite不能确保插入顺序。所以最终你必须根据使用循环还是限制来使用顺序。使用限制是正确的解决方案。所有结果将在一次查询中加载。如果你想在下一次调用中获得下3个数据,请使用关键字OFFSET。查看sqlite文档你可以保持这种方式。加载所有数据从来不是一个好的解决方案。分块加载数据(如果数据很大的话)使用
LIMIT
OFFSET
进行分页。是否可以使用其他技术获取三个数据,如用于循环或其他任何内容?如果我获取所有数据并添加for循环,以获取最后三个数据,如
List companyList 1=new arrarylist();for(int i=companyList.size()-1;i>companyList.size()-4;i--){companyList.add(companyList.get(i))
第一次使用它,但现在它不起作用,所以如何使用它loop@MohammadAli如果您一次获得所有3行,那么您就有了列表列表。我不确定您为什么要迭代公司列表,以及公司列表的内容是什么?
companyList
?它是否包含查询结果?您可以建议我使用
limite3
我将获得我理解的3个数据,它已被完全使用,但与我在loop@AmitBera中获得的数据相同
companyList = myComDb.getAllCompany();
        companiesAdapter = new CompaniesAdapter(companyList);
        companiesAdapter.setClickListener(companyListItemClickListner);
        RecyclerView.LayoutManager mLayoutManager1 = new LinearLayoutManager(getActivity().getApplicationContext());
        rvCompanies.setLayoutManager(mLayoutManager1);
        rvCompanies.setItemAnimator(new DefaultItemAnimator());
        rvCompanies.setAdapter(companiesAdapter);
String selectQuery = "SELECT  * FROM " + COMPANY + " ORDER BY (" + KEY_CREATED_AT + ") DESC LIMIT 3 " ;