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

Chọn tất cả các trường tương ứng bằng MAX và GROUP BY

không có một trường khóa chính duy nhất, tôi nghĩ cách tốt nhất của bạn là:

select * from deal_status
inner join
  (select deal_id as did, max(timestamp) as ts
  from deal_status group by deal_id) as ds
  on deal_status.deal_id = ds.did and deal_status.timestamp = ds.ts

điều này vẫn sẽ không hoạt động nếu bạn cho phép có hai trạng thái khác nhau cho cùng một sản phẩm cùng một lúc



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Php mysql tạo cơ sở dữ liệu nếu không tồn tại

  2. Id tài nguyên # 4 PHP MYSQL

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

  4. SQLSTATE [23000]:Vi phạm ràng buộc toàn vẹn với ràng buộc hợp lệ

  5. truy vấn muliple mysql trong một câu lệnh