私は次のようなデータを持っています
TABLE1
------
A |B
1 |2
3 |4
TABLE2
------
C |D
1 |11
2 |12
3 |13
4 |14
期待される出力は
D , D
--------
11, 12
13, 14
この出力の背後にあるロジックは、テーブル 2 の列 C と一致するテーブル 1 の列 A または列 B に対応するテーブル 2 の列 D をビューが常に返すように、ビューを作成する必要があるということです。このビューは、table1 のキーに基づいて Table2 の値を検索するためのルックアップとして機能します。場合によっては、table1 のキーのいずれかが table2 に対応する値を持たない場合、そのペアは報告されません。
データ設定:
CREATE TABLE Table1
("A" number, "B" number);
INSERT ALL
INTO Table1 ("A", "B") VALUES (1, 2)
INTO Table1 ("A", "B") VALUES (3, 4)
SELECT * FROM dual;
CREATE TABLE Table2
("C" number, "D" number);
INSERT ALL
INTO Table2 ("C", "D") VALUES (1, 11)
INTO Table2 ("C", "D") VALUES (2, 12)
INTO Table2 ("C", "D") VALUES (3, 13)
INTO Table2 ("C", "D") VALUES (4, 14)
SELECT * FROM dual;
文字列連結でいくつかの結合を試みましたが、それらはひどいものに見えます。これは実際には Kognitio データベースですが、Oracle 構文のほとんどはここで機能します。こちらも参考にさせていただきました。また、これは DWH 環境であり、このロジックを代理キーに適用します。