Mysql
 sql >> Base de données >  >> RDS >> Mysql

Pourquoi la table SELECT * FROM INNER JOIN..ON affiche-t-elle deux fois la colonne d'intersection ?

Lorsque vous utilisez ON people.address = home.address , c'est juste une coïncidence si les noms de colonne sont les mêmes dans les deux tables -- souvent ce type de ON condition correspond à des colonnes avec des noms différents. Les colonnes en double ne sont pas filtrées du résultat lorsque vous faites cela.

Mais lorsque vous utilisez USING (address) , les noms de colonne doivent être identiques dans les deux tables (puisque USING ne vous permet pas de relier des colonnes avec des noms différents). Puisqu'il est évidemment redondant d'avoir les deux, les doublons sont filtrés.