Gebruik deze oplossing voorzichtig:
het is niet gegarandeerd dat het werkt in toekomstige versies van mysql
het is niet bekend dat het werkt in mariadb 5.5
Deze query kan goed werken, omdat er geen joins zijn.
SELECT * FROM (
SELECT timestamp, method, id, response
FROM rpc_responses
WHERE 1 # some where clause here
ORDER BY timestamp DESC
) as t1
GROUP BY method
De "groeperen op" vouwt de resultaatset op methode samen en retourneert slechts 1 rij per methode, de meest recente, vanwege het ORDER BY-tijdstempel DESC in de binnenste query.
Ter info, PostgreSQL heeft een manier om dit in de taal te doen:
SELECT DISTINCT ON (method) timestamp, method, id, response
FROM rpc_responses
WHERE 1 # some where clause here
ORDER BY method, timestamp DESC