次のように、1つの列の値に応じて異なるテーブルを結合したいテーブルがあります(これは機能しませんが、私の例です):
SELECT * FROM table1
JOIN (CASE WHEN table1_column1=1 THEN table2 ON table2_column1=table1_column2 END)
WHERE table1_column3='hello'
全体として、列には 4 つの値があり、他のテーブルを呼び出します。これは実行可能ですか?
編集:私が求めているものを明確にする必要があると思います。table1_column1 の値に応じて、JOIN で特定のテーブルと列をフェッチする必要があります。たとえば、t1c1=1 の場合、table1_column2 で table2_column1 を結合する必要があります。ただし、t1c1=2 の場合は、table1_column2 で table5_column1 を結合する必要があります。などなど
繰り返しますが、これは実行可能ですか? 2 つの個別のクエリを使用すると、簡単にスクリプト化できます。ただし、1 つのクエリを使用したいだけです。