Sử dụng giải pháp này một cách thận trọng:
nó không được đảm bảo hoạt động trong các phiên bản tương lai của mysql
nó không được biết là hoạt động trong mariadb 5.5
Truy vấn này có thể hoạt động tốt vì không có liên kết nào.
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
"Nhóm theo", thu gọn tập kết quả trên phương thức và chỉ trả về 1 hàng cho mỗi phương pháp, hàng gần đây nhất, do MÔ TẢ dấu thời gian ORDER BY trong truy vấn bên trong.
FYI, PostgreSQL có một cách thực hiện việc này được tích hợp vào ngôn ngữ:
SELECT DISTINCT ON (method) timestamp, method, id, response
FROM rpc_responses
WHERE 1 # some where clause here
ORDER BY method, timestamp DESC