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

Làm cách nào để nhận bản ghi mới nhất trong mỗi nhóm bằng cách sử dụng GROUP BY?

Bạn nên tìm ra timestamp cuối cùng các giá trị trong mỗi nhóm (truy vấn con), rồi nối truy vấn con này vào bảng -

SELECT t1.* FROM messages t1
  JOIN (SELECT from_id, MAX(timestamp) timestamp FROM messages GROUP BY from_id) t2
    ON t1.from_id = t2.from_id AND t1.timestamp = t2.timestamp;


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tiện ích mở rộng mysqli bị thiếu, phpmyadmin không hoạt động

  2. Cột không xác định trong mệnh đề Where

  3. Các ký tự đặc biệt trong tên bảng MySQL

  4. truy vấn động mysql trong thủ tục được lưu trữ

  5. Khắc phục sự cố đăng nhập PHP SQL đơn giản