0

背景
この質問は少し奇妙ですが、ここに説明があります。

私はTableA自分のデータベースに持っています。次に、他の 2 つのマスター テーブルからの結合を含む 2 つの個別のクエリがあります。

SELECT TableA.*
FROM MasterTable_1 INNER JOIN TableA
ON MasterTable_1.ID = TableA.ID
WHERE MasterTabe_1.Field = 'some specific value';

SELECT TableA.*
FROM MasterTable_2 INNER JOIN TableA
ON MasterTable_2.ID = TableA.ID
WHERE MasterTabe_2.Field = 'some specific value';

私は今TableA、2 つのクエリ、同じ列、およびすべての値を持っていますが、これは 2 つのテーブルを持つようなもので、すべてのデータから 1 つのテーブルと 1 つの列のセットを取得する方法がわかりません。

質問
それで、私の質問はTableA、個別の SELECT/JOIN クエリから、SELECT DISTINCTその最終テーブルで呼び出すことができる 1 つの列セットを持つ 1 つのテーブルに値を取得する方法です。

さらに説明が必要な場合はお知らせください。うまく説明できれば幸いです。

4

2 に答える 2

2

UNION を使用したい場合:

SELECT TableA.*
FROM MasterTable_1 INNER JOIN TableA
ON MasterTable_1.ID = TableA.ID
WHERE MasterTable_1.Field = 'some specific value';
UNION ALL
SELECT TableA.*
FROM MasterTable_2 INNER JOIN TableA
ON MasterTable_2.ID = TableA.ID
WHERE MasterTable_2.Field = 'some specific value';
于 2012-05-21T18:00:59.447 に答える
0

ユニオンは試しましたか?単一の結果セット内でフィルタリングする必要がある場合は、定数値を使用して各テーブルに追加の列を追加することもできます。

于 2012-05-21T18:00:59.693 に答える