Mysql
 sql >> база данни >  >> RDS >> Mysql

MySQL LEFT JOIN 3 таблици

Опитвате се да се присъедините към Person_Fear.PersonID в Person_Fear.FearID - Това наистина няма смисъл. Вероятно искате нещо като:

SELECT Persons.Name, Persons.SS, Fears.Fear FROM Persons
LEFT JOIN Person_Fear
    INNER JOIN Fears
    ON Person_Fear.FearID = Fears.FearID
ON Person_Fear.PersonID = Persons.PersonID

Това се присъединява към Persons върху Fears чрез междинната таблица Person_Fear . Тъй като свързването между Persons и Person_Fear е LEFT JOIN , ще получите всички Persons записи.

Алтернативно:

SELECT Persons.Name, Persons.SS, Fears.Fear FROM Persons
LEFT JOIN Person_Fear ON Person_Fear.PersonID = Persons.PersonID
LEFT JOIN Fears ON Person_Fear.FearID = Fears.FearID


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Laravel:лява заявка за присъединяване

  2. SQL Division, използващ „не съществува“ в mysql

  3. mysql jdbc драйвер не поддържа разделители в тригери с множество изрази

  4. Мигриране на MySQL база данни от Amazon RDS към DigitalOcean

  5. Избиране на MySQL с условие CONCAT