我有这个代码:
select Users.phoneMac, Users.apMac, Locations.Lon, Locations.Lat
from Locations, Users
inner join (
select u.phoneMac, max(u.strenght) as most
from Users u, Locations l
where u.apMac = l.apMac
group by u.phoneMac
) as ij on ij.phoneMac=Users.phoneMac and Users.strenght = ij.most
where Locations.apMac = Users.apMac;
它对我来说很好,但是当我向用户表添加更多数据时,这个查询会从所有数据中计算结果,我只想从最新数据中获取结果。所以我在用户表中添加了时间戳。
所以你能帮我修复这个代码,所以它首先只从每个用户的最新时间戳中获取数据(users.phoneMac)(同一个phoneMac可以有超过1行数据),然后进行其余的计算。