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

MySQL - Tham gia 2 bảng

Bạn có thể sử dụng SQL đầu tiên mà bạn đã viết nhưng đối với tất cả người dùng:

SELECT u.*, b.balance, b.date
FROM users u JOIN balance b ON u.id = b.userId
WHERE b.date = (SELECT MAX(date) FROM balance WHERE userId = u.id);

Đây có thể không phải là cách nhanh nhất để nhận được kết quả, nhưng nó sẽ cung cấp cho bạn những gì bạn cần. Tôi sử dụng các truy vấn tương tự ở khá nhiều nơi trong ứng dụng của mình.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Nhận tên cột thay vì giá trị cột

  2. Khớp 2 cột sql if =rồi cập nhật một cột khác bằng 1

  3. Có thể tăng tốc một sum () trong MySQL không?

  4. Tạo một mảng bằng php đệ quy từ mysql

  5. Xoay một bảng và hiển thị n chuỗi thời gian có thứ tự