2016-12-24 8 views
-1

メンバーシップに関するデータを持つ複数の組織テーブルがあります。個人は、0以上の組織のメンバーである可能性があります。これは、テーブルスキーマから共通フィールド指定された名前いずれかのテーブルに結果がある場合の複数テーブル外部結合

Select name, address,idIndividual 
from tbl1,tbl2,tbl3,tbl4,tbl5,tbl6 
where name = 'FOO' 
人がどれであってもよい

またはテーブルのすべてのために(例だけでなく、本当に)idIndividual、名前、住所 私が欲しいidIndividualとアドレスの例です。 、Iこのいずれかで迷ってしまいました、任意のヘルプは大幅に

+0

を使用していただければ幸いでは、 '名=「FOO''のために複数の異なる' idIndividual'ありますか? – SqlZim

+0

質問を改善するためのヒントについては、[こちら](http://spaghettidba.com/2015/04/24/how-to-post-a-t-sql-question-on-a-public-forum/)をお読みください。サンプルデータのようなクレイジーなもの、期待される結果、...。 – HABO

答えて

0

UNION代わり

WITH cte AS 
(
SELECT name, address,idIndividual 
FROM tbl1 
UNION 
SELECT name, address,idIndividual 
FROM tbl2 
UNION 
SELECT name, address,idIndividual 
FROM tbl3 
UNION 
SELECT name, address,idIndividual 
FROM tbl4 
UNION 
SELECT name, address,idIndividual 
FROM tbl5 
UNION 
SELECT name, address,idIndividual 
FROM tbl6 
) 
SELECT * FROM cte WHERE name = 'FOO' 
関連する問題