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

Por que SELECT * FROM tabela INNER JOIN..ON mostra a coluna de interseção duas vezes?


Quando você usa ON people.address = home.address , é apenas uma coincidência que os nomes das colunas sejam os mesmos em ambas as tabelas -- geralmente esse tipo de ON condição corresponde a colunas com nomes diferentes. As colunas duplicadas não são filtradas do resultado quando você faz isso.

Mas quando você usa USING (address) , os nomes das colunas devem ser os mesmos em ambas as tabelas (já que USING não permite relacionar colunas com nomes diferentes). Como é obviamente redundante ter os dois, as duplicatas são filtradas.