2016-07-09 16 views
0

70データベースから7つのデータ(FM、DC、BC、MD、AT、FR、ZP)を検索したいのですが、デフォルトのスキーマとして各データベースを選択する必要があります一度に1つのデータを検索しなければならない、とにかくすべてのデータを一緒に見つける方法はありますか?または任意の簡単なトリック。複数のデータベースから複数のデータを検索

ここでは、データベースからデータベースからデータを検索するために実際に行っていることがあります。
私はstart searchをクリックすると、単一のデータベースからすべてのテーブルのデータを検索し、見つかったデータのtablename、columnname、およびnumberを返します。データが見つかった場所について言及する必要があります。

enter image description here

+0

出力は何ですか?あなたは何を期待していますか、何を得ていますか? – Andrej

答えて

1

select FM,DC,BC,MD,AT,FR,ZP 
from db1.table1 
union all 
select FM,DC,BC,MD,AT,FR,ZP 
from db2.table2 
select FM,DC,BC,MD,AT,FR,ZP 
from db3.table3 
union all 
select FM,DC,BC,MD,AT,FR,ZP 
from db4.table4 
union all 
.......... 
select FM,DC,BC,MD,AT,FR,ZP 
from dbN.tableN 
+0

各データベースに約500のテーブルがあり、私はデータの一致シナリオを見つけたいと思います(上記のように、私はtablenameとcolumnnameを取得しました。テーブルとカラムの名前が記録されています) – yash

+0

より明確なサンプルで質問してください.. – scaisEdge

1

あなたは同じ構造を持つテーブルから選択する必要がありますが、別のデータベースにすべてのすべての値のために個別の値や労働組合のために労働組合を使用できる場合は、マージするUNIONを使用することができますすべてのデータベースのテーブル結果がどこから来たのかを確認するには、それを識別するリテラルを含む列を追加することができます。

SELECT "db1" AS whichDB, "table1" AS whichTable, FM,DC,BC,MD,AT,FR,ZP 
FROM db1.table1 
WHERE <conditions> 
UNION ALL 
SELECT "db2" AS whichDB, "table2" AS whichTable, FM,DC,BC,MD,AT,FR,ZP 
FROM db2.table2 
WHERE <conditions> 
SELECT "db3" AS whichDB, "table3" AS whichTable, FM,DC,BC,MD,AT,FR,ZP 
FROM db3.table3 
WHERE <conditions> 
... 
関連する問題