我们创建了一个 Android 应用程序,该应用程序的多个用户会定期将其坐标发送到服务器上名为“data”的表中。其中有 3 列“bus_id”、“经度”、“纬度”。每个用户都有一个特定的 id。表结构为:
data
bus_id longitude latitude
--------------------------------
除了坐标之外,他们还将自己的 ID 发送到服务器。该表中没有主键。现在我们想要提取特定用户的最新条目。那么有没有办法做到这一点,或者我们必须定义一个主键? 或者还有其他方法吗?
最佳答案
要提取“最新”条目(由特定用户或其他方式),您需要某种方法来跟踪各个记录,可以通过自动增量 ID 或通过日期字段。
仅使用您显示的三列,就无法查询“最新” - 您只能按表中存在的属性进行搜索、排序和过滤。
使用自动增量 ID 字段:
SELECT * FROM data
WHERE bus_id = 'specific_user'
ORDER BY id DESC LIMIT 1
将为特定用户(由bus_id指定)选择记录,按自动增量ID降序排列它们,并返回顶部记录,该记录将是具有最高ID号的记录,因此是最新的记录(对于该用户)。
关于android - 提取包含添加到数据库表中的经度和纬度的最新行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34847360/