Mysql
 sql >> Database >  >> RDS >> Mysql

In SQL/MySQL, qual è la differenza tra ON e WHERE in un'istruzione join?

Il ON La clausola definisce la relazione tra le tabelle.

Il WHERE La clausola descrive le righe che ti interessano.

Molte volte puoi scambiarli e ottenere sempre lo stesso risultato, tuttavia questo non è sempre il caso con un join esterno sinistro.

  • Se il ON clausola fallisce ottieni comunque una riga con colonne dalla tabella di sinistra ma con valori nulli nelle colonne dalla tabella di destra.
  • Se il WHERE clausola fallisce non otterrai affatto quella riga.