0

さて、MySQLのテーブルをid列を使用してテーブルに結合できることはわかっています。

ほぼ同一の2つのテーブルを結合する必要がある2つのデータベースがあります。

たとえば、一方のテーブル全体をもう一方のテーブルに挿入するのと同じように、これらの「ダウン」を結合する必要があります。通常のクロスジョインではありません。

MySQLではこれを行うことができますか?

4

4 に答える 4

1

UNIONこれを達成するための良い方法です。

SELECT * FROM table1
UNION
SELECT * FROM table2

返される列の数が同じであり、データ型が一致していることを確認してください。

于 2012-06-21T15:15:24.397 に答える
1

はい、使用できますUNION-唯一の条件は、両方の選択されたクエリ(両方のテーブル)から同じ量の列を選択することです。

SELECT a, b, c, d FROM table1

UNION

SELECT d, e, f, g FROM table2

一般的な問題は、から結果を注文することです。そのため、UNION解決策は次のとおりです。

SELECT a AS order_by, b, c, d FROM table1
UNION
SELECT d, e, f AS order_by, g FROM table2
ORDER BY order_by DESC
于 2012-06-21T15:16:32.893 に答える
0

これを試して :

INSERT INTO database1.table1 
    SELECT * FROM database2.table2
于 2012-06-21T15:15:40.087 に答える
0

はい、それは可能です。テーブルの前に完全なデータベース名を使用し、ユーザーが両方のデータベースに対する権限を持っていることを確認してください。

 SELECT ...
 FROM database1.table t1
 JOIN database2.table2 t2 ON t2.column = t1.col
于 2012-06-21T15:18:18.137 に答える