Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Como JOIN dois FKs de uma mesa para outra mesa?


Você terá que fornecer as instâncias dos aliases da tabela "users", para poder consultá-los separadamente:
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)

Para selecionar solicitações e relacionamentos, você pode usar um 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)