Mysql
 sql >> Baza danych >  >> RDS >> Mysql

mysql left join nie zwraca całego lewego wiersza tabeli

W zapytaniu;

SELECT *
FROM phonetype
LEFT JOIN phone
ON phonetype.phonetypeID=phone.phonetypeID
where phone.peopleID = ?

...WHERE klauzula z warunkiem w tabeli po prawej stronie usunie wszystkie wiersze, w których tabela po prawej stronie nie ma wartości, negując LEFT JOIN .

Najprawdopodobniej chcesz dodać warunek do LEFT JOIN ON zamiast tego, zezwalając na puste wartości phone nadal się pojawiać;

SELECT *
FROM phonetype
LEFT JOIN phone
  ON phonetype.phonetypeID=phone.phonetypeID
 AND phone.peopleID = ?


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Usuń niepotrzebne meta obrazu Woocommerce

  2. Jak uciec z mysql w magento?

  3. Liczba MySQL poza limitem

  4. Wyzwalacze MySQL wstawiają się do innej tabeli

  5. Wybierz tylko najnowsze zgrupowane wpisy