In MySQL, ho due differenti basi di dati - la chiamata di lasciarli A e B .
È possibile eseguire un join tra una tabella che si trova nel database A e una tabella che si trova nel database B ?
In MySQL, ho due differenti basi di dati - la chiamata di lasciarli A e B .
È possibile eseguire un join tra una tabella che si trova nel database A e una tabella che si trova nel database B ?
Risposte:
Sì, supponendo che l'account disponga delle autorizzazioni appropriate, puoi utilizzare:
SELECT <...>
FROM A.table1 t1 JOIN B.table2 t2 ON t2.column2 = t1.column1;
Hai solo bisogno di anteporre il riferimento alla tabella con il nome del database in cui risiede.
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
o
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;
Assicurati solo di specificare nella riga SELECT quali colonne della tabella stai utilizzando, per riferimento completo o per alias. Uno dei seguenti funzionerà:
SELECT *
SELECT t1.*,t2.column2
SELECT A.table1.column1, t2.*
etc.