我有一个包含多个imei的表格数据。我想找出所有imei的所有最大值(日期)。 我正在写这个查询:
SELECT *
from data
where gpsdatetime=(
select max(gpsdatetime)
from data)
AND imei in("+imei_string+");
但是这会获取所选imei的所有数据,然后从所有数据中只选择一个最大日期。
我想找出所有imei的所有最大值(日期)。
答案 0 :(得分:0)
试试这个:
SELECT imei, MAX(gpsdatetime)
FROM data
GROUP BY imei
此查询使用GROUP BY clause。
如果您想要所有imei行(甚至是重复行),请使用以下查询:
SELECT a.imei, b.gpsdatetime
FROM data a
JOIN (
SELECT imei, MAX(gpsdatetime) as gpsdatetime
FROM data
GROUP BY imei
) b
ON a.imei = b.imei
答案 1 :(得分:0)
我认为你正在寻找这个
SELECT * From data D
where gpsdatetime in (select max(gpsdatetime) from Data group by imei)
AND imei in("+imei_string+");