嗨我想从日期desc中选择表格顺序而不是gruoup by smth。起初phpmyadmin给出一个错误(sql_mode = only_full_group_by)并且我通过从my.cnf中删除该标志来解决它并且我不知道这个修复程序是否长期有用,我读到某个地方,通过此修复,您可以获得不想要的结果我已经尝试了**select * from ( select * from log order by date desc) tmp group by imei**
,但结果是从最早的日期开始,而不是从最新日期开始,它从第一个ID开始给我imei,而不是从最后一个开始。
答案 0 :(得分:0)
对于分组结果,如果您已订购输入,则无关紧要。如果我正确地解释了您的问题,您希望获得每个imei的最新日志条目。你必须做这样的事情:
SELECT l1.*
FROM logs as l1
LEFT OUTER JOIN logs as l2
ON l1.imei = l2.imei
AND l1.date < l2.date
WHERE l2.date IS NULL
你实际上要求的每个日志条目(l1)没有日志条目(l2)与相同的imei,但更大的日期。
如果你只想知道每个imei的最后一个日志条目是什么时候,这就足够了:
SELECT imei, MAX(date)
FROM log
GROUP BY imei
答案 1 :(得分:0)
SELECT * FROM log WHERE id in(SELECT max(id)FROM log group by imei)