Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

Cách chọn tập hợp các bản ghi ngày tháng gần đây nhất từ ​​bảng mysql

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


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Mysqli_real_escape_string có đủ để tránh SQL injection hoặc các cuộc tấn công SQL khác không?

  2. DATALENGTH () Tương đương trong MySQL là gì?

  3. Rails, MySQL và Snow Leopard

  4. Cách kết nối với MySQL bằng PHP

  5. JSON_MERGE_PRESERVE () - Hợp nhất nhiều tài liệu JSON trong MySQL