2011-12-03 12 views
0

同じ列名を持つ複数のテーブル(8)があります。各テーブルはサイトです。どのtable.columnに特定の値があるかを調べることができます。すなわち、 table.subnet = '10 .3.30.x '。前もって感謝します。特定の値の複数のtables.columnを検索

+0

を?私たちの答えが役に立つかどうかを知ることは良いでしょう! – codeling

答えて

1

UNION ALLのキーワードを確認してください。

(SELECT 'table1', table1.* FROM table1 where subnet = '10.3.30.x') 
UNION ALL 
(SELECT 'table2', table2.* FROM table2 where subnet = '10.3.30.x') 
UNION ALL 
... 
(SELECT 'table7', table7.* FROM table7 where subnet = '10.3.30.x') 
UNION ALL 
(SELECT 'table8', table8.* FROM table8 where subnet = '10.3.30.x') 

そのようにサブネット値は、行がに登場し、テーブルの名前とともに、指定した値であり、あなたの結果はすべての列を持つことになり

:私は何がやりたいことは、このようなものであると思います。
1

あなたは、単一のクエリ内のすべての値を取得するためにUNIONを使用することができます。まだそこ

SELECT 'table1', subnet FROM table1 WHERE subnet = '10.3.30.x' 
UNION 
SELECT 'table2', subnet FROM table2 WHERE subnet = '10.3.30.x' 
UNION 
SELECT 'table3', subnet FROM table3 WHERE subnet = '10.3.30.x' 
UNION 
SELECT 'table4', subnet FROM table4 WHERE subnet = '10.3.30.x'; 
関連する問題