W MySQL, mam dwóch różnych baz danych - połączenie Powiedzmy im A i B .
Czy można wykonać sprzężenie między tabelą znajdującą się w bazie danych A a tabelą znajdującą się w bazie danych B ?
W MySQL, mam dwóch różnych baz danych - połączenie Powiedzmy im A i B .
Czy można wykonać sprzężenie między tabelą znajdującą się w bazie danych A a tabelą znajdującą się w bazie danych B ?
Odpowiedzi:
Tak, zakładając, że konto ma odpowiednie uprawnienia, z których możesz korzystać:
SELECT <...>
FROM A.table1 t1 JOIN B.table2 t2 ON t2.column2 = t1.column1;
Wystarczy poprzedzić odwołanie do tabeli nazwą bazy danych, w której się ona znajduje.
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
lub
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;
Po prostu upewnij się, że w linii SELECT określasz, których kolumn tabeli używasz, albo przez pełne odwołanie, albo przez alias. Będzie działać dowolne z poniższych:
SELECT *
SELECT t1.*,t2.column2
SELECT A.table1.column1, t2.*
etc.