No MySQL, eu tenho dois bancos de dados diferentes - vamos chamá-los de A e B .
É possível executar uma junção entre uma tabela que está no banco de dados A e uma tabela que está no banco de dados B ?
No MySQL, eu tenho dois bancos de dados diferentes - vamos chamá-los de A e B .
É possível executar uma junção entre uma tabela que está no banco de dados A e uma tabela que está no banco de dados B ?
Respostas:
Sim, supondo que a conta tenha permissões apropriadas, você pode usar:
SELECT <...>
FROM A.table1 t1 JOIN B.table2 t2 ON t2.column2 = t1.column1;
Você só precisa prefixar a referência da tabela com o nome do banco de dados em que reside.
ERROR 1146 (42S02): Table 'currentdb.otherdb.tablename' doesn't exist
FROM A.table1 JOIN B.table2 ON B.table2 .column2 = A.table1.column1
SELECT *
FROM A.tableA JOIN B.tableB
ou
SELECT *
FROM A.tableA JOIN B.tableB
ON A.tableA.id = B.tableB.a_id;
SELECT <...>
FROM A.table1 t1 JOIN B.table2 t2 ON t2.column2 = t1.column1;
Apenas certifique-se de que na linha SELECT você especifique quais colunas da tabela você está usando, por referência completa ou por alias. Qualquer um dos seguintes procedimentos funcionará:
SELECT *
SELECT t1.*,t2.column2
SELECT A.table1.column1, t2.*
etc.