从DB获取特定列的最新行

时间:2015-02-17 08:57:38

标签: java sqlite arraylist collections android-sqlite

来自DB

+-----+---------+---------+
|user |  place  |timestamp|
+-------------------------+
|Name3|Location2|11:12    |
|Name1|Location1|11:13    |
|Name2|Location2|11:15    |
|Name3|Location3|11:16    |
|Name1|Location2|11:17    |
|Name4|Location1|11:18    |
+-----+---------+---------+

我想查询特定user的最后一个条目,例如Name3的查询应该返回Location2

是否可以通过sqlite查询来完成?也许将所有数据转移到List然后尝试查找特定user的最后一个条目会更容易吗?

3 个答案:

答案 0 :(得分:2)

使用此查询: 通过e.user;

选择* from(按时间戳desc从表顺序中选择)e group

答案 1 :(得分:1)

您可以在Sqlite中使用以下查询:

select user, location from demo where timestamp in(
   select min(timestamp) from demo group by user) 
   order by user;

您可以在此处看到demo

答案 2 :(得分:0)

您可以通过运行原始查询来执行此操作:

select place from table where timestamp = (select max(timestamp) from table);