3 つのテーブル間で UNION を実行しています。分かりやすく説明すると、1 つのテーブルがメイン テーブルと見なされ、他の 2 つのテーブルがサブ テーブルと見なされます。2 つのサブテーブルには、ケースごとに常に同じ数のレコードがあります。したがって、これらの 3 つのテーブル間でユニオンを作成したかったのですが、このユニオンでは、メイン テーブルでフェッチされた列の情報を繰り返し、サブ テーブル 1 のすべての行が行に対応する 2 つのサブ テーブルの情報をリストしたいと考えています。サブテーブル2に。専門的な理由により実際のコードを掲載できないため、ここに私の実際のケースに対応する簡単な例を示します。Author (Author_ID、Author_FirstName、Author_LastName) というテーブルを考えてみましょう。このテーブルがメインテーブルになります。次に、Adresses (Adress_ID、Street_Coord、Author_ID) というテーブルがあるとします。これがサブテーブル 1 になります。次に、Cities (City_ID、City_Name、Author_ID) というテーブルについて考えます。著者 X は 2 つの都市に 2 つの住所を持っています。クエリを実行すると、完全に論理的な結果 R1 が得られますが、クエリを変更して結果 R2 を取得したいと考えています。クエリを変更して結果 R2 を取得する方法を教えてください。
SQL クエリ:
SELECT "Author"."Author_ID", "Author"."Author_FirstName", "Author.Author_LastName",
TO_CHAR(NULL) AS "Street_Coord", TO_CHAR(NULL) AS "City_Name"
FROM "Author"
WHERE "Author"."Author_ID"='X'
UNION
SELECT TO_NUMBER(NULL) AS "Author_ID", TO_CHAR(NULL) AS "Author_FirstName", TO_CHAR(NULL) AS "Author_LastName",
"Adresses"."Street_Coord", TO_CHAR(NULL) AS "City_Name"
FROM "Adresses"
WHERE "Adresses"."Author_ID"='X'
UNION
SELECT TO_NUMBER(NULL) AS "Author_ID", TO_CHAR(NULL) AS "Author_FirstName", TO_CHAR(NULL) AS "Author_LastName",
TO_CHAR(NULL) AS "Street_Coord", "Cities"."City_Name"
FROM "Cities"
WHERE "Cities"."Author_ID"='X'
結果 R1:
ID_AUTHOR | AUTHOR_FirstName | AUTHOR_LastName | Street_Coord | City_Name |
----------------------------------------------------------------------------------
X |James | Conor | NULL | NULL |
----------------------------------------------------------------------------------
X |NULL | NULL | 1245 rich st | NULL |
----------------------------------------------------------------------------------
X |NULL | NULL | 154 music st | NULL |
----------------------------------------------------------------------------------
X |NULL | NULL | NULL | Madrid |
----------------------------------------------------------------------------------
X |NULL | NULL | NULL | Barcelona |
----------------------------------------------------------------------------------
結果 R2: この結果を得るのを手伝ってほしい:
ID_AUTHOR | AUTHOR_FirstName | AUTHOR_LastName | Street_Coord | City_Name |
----------------------------------------------------------------------------------
X |James | Conor | 1245 rich st | Madrid |
----------------------------------------------------------------------------------
X |James | Conor | 154 music st | Barcelona |
----------------------------------------------------------------------------------
どうもありがとう、ワラウド