为“LAST”聚合函数提出的解决方案我有如下所示日志表:在MySQL
logs (_id_, client, metric, value);
我试图结束来获取信息从PHP前写在MySQL以下查询从日志表中删除。
SELECT client, LAST(value) AS value
FROM logs
WHERE metric = 'free space'
GROUP BY client;
除当然,LAST
不是一个有效的聚合函数。
我提出的解决方案是这样的:
SELECT client, value
FROM logs
WHERE id IN (
SELECT MAX(id)
FROM logs
WHERE metric = 'free space'
GROUP BY client);
然而,对于4000行的一个非常小的表,这个查询时间超过60秒,我的机器上执行。
对此提出建议?
Thanks @Ben - id字段被索引(主键),所以这将完美工作。谢谢! – Philip 2012-04-22 12:28:11