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

Làm thế nào để THAM GIA hai FK từ một bảng này sang một bảng khác?

Bạn sẽ phải cung cấp các phiên bản của bí danh bảng "người dùng", vì vậy bạn có thể tham khảo chúng một cách rõ ràng:

SELECT u1.*, u2.* FROM relationship r
  JOIN users u1 ON (u1.user_id = r.first_user)
  JOIN users u2 ON (u2.user_id = r.second_user)

Để chọn cả hai từ yêu cầu và mối quan hệ, bạn có thể sử dụng UNION :

SELECT u1.*, u2.* FROM relationship r
  JOIN users u1 ON (u1.user_id = r.first_user)
  JOIN users u2 ON (u2.user_id = r.second_user)
UNION
SELECT u1.*, u2.* FROM requests r
  JOIN users u1 ON (u1.user_id = r.first_user)
  JOIN users u2 ON (u2.user_id = r.second_user)


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Chỉ chọn bản ghi nếu bản ghi trước nó có giá trị thấp hơn

  2. Thay đổi dấu phân cách truy vấn MySQL thông qua API C

  3. PDO và bộ nhớ đệm, làm thế nào để triển khai nó trong một lớp cơ sở dữ liệu?

  4. Làm thế nào để json_encode mảng có dấu tiếng Pháp?

  5. Tương đương với bind_result trên PDO