我们创建了一个Android应用程序,其中此应用程序的多个用户在定期的时间间隔之后在名为“data”的表中的服务器上发送其坐标。它有3列“bus_id”,“经度”,“纬度”。每个用户都有一个特定的id。表结构是:
data
bus_id longitude latitude
--------------------------------
除了坐标,他们还将其ID发送到服务器。该表中没有主键。现在我们想要提取特定用户的最新条目。有没有办法这样做或我们必须定义一个主键? 或者还有其他方法吗?
答案 0 :(得分:0)
要提取“最新”条目(由特定用户或其他方式),您需要某种方式来跟踪单个记录,可以通过自动增量ID或日期字段来跟踪。
只显示您显示的三列,没有依据可以对“最近”进行查询 - 您只能按表中的属性进行搜索,排序和过滤。
使用自动增量ID字段:
SELECT * FROM data
WHERE bus_id = 'specific_user'
ORDER BY id DESC LIMIT 1
将为特定用户选择记录(由bus_id指定),按自动增量ID按降序排序,并返回最高记录,该记录将是具有最高ID号的记录,因此是最新记录(对于那个用户)。