我一直试图从MySQL数据库中收集一些数据。
问题在于,我希望按objectid
对数据进行分组,同时只获取最新数据(降序)。
每次尝试时,我都会收到错误,或者它没有下降。
我目前的询问是:
SELECT * FROM 'table' GROUP BY 'objectid' DESC
我尝试按id
或timestamp
排序,但结果是提升。
我的问题类似于:http://stackoverflow.com/questions/7306082/mysql-using-group-by-and-desc
然而,那里提供的答案并没有解决我的问题。
提前致谢!
答案 0 :(得分:2)
您还必须指定ORDER BY子句进行排序:
SELECT * FROM 'table' GROUP BY 'objectid' ORDER BY timestamp DESC
答案 1 :(得分:0)
您的查询错误,您应该backticks
而不是single quotes
而你错过了按照法令命令
试试这个
SELECT * FROM `table` GROUP BY `objectid` Order by id DESC
答案 2 :(得分:0)
这将为您提供每个ObjectId的最新条目,按降序排序;它只是让联接找到所有条目,其中没有相同ObjectId的新条目。
SELECT a.*
FROM table1 a
LEFT JOIN table1 b
ON a.ObjectId=b.ObjectId
AND a.time < b.time
WHERE b.ObjectId IS NULL
ORDER BY time DESC