我有一张非常窄的表格:DATA, ID, LAT, LNG, TIME。 (https://gyazo.com/52b268c00963ed12ba85c6765f40bf63)
我想选择每个不同ID的最新数据。我曾经使用类似以下查询语句:
SELECT *
FROM name_of_table
WHERE TIME > my_given_time;
但是它选择了全部数据,而不仅仅是符合条件的每个不同 id 的数据。
有人能帮我写下这个查询吗?
感谢任何帮助。:)
编辑
我的最终工作查询如下:
SELECT * FROM (SELECT * FROM (SELECT ROW_NUMBER() OVER (PARTITION BY ID ORDER BY TIME DESC) AS ROWNUMBER, * FROM my_table) WHERE ROWNUMBER = 1) WHERE TIME > my_time;
感谢大家的帮助。