本当に初歩的な質問で申し訳ありませんが、調べても自力で解決出来なかったため質問させていただきます。
現在、年月毎に複数に分けて管理されているテーブルをUNION ALLで1つに結合する処理を書いています。
一旦3ヶ月分取り出して結合する処理を書いたのが以下のコードです。
SQL
1select * from table_A 2left join table_B_201911 on table_A = table_B_201911.id 3left join table_C_201911 on table_A = table_C_201911.id 4where table_A.name = 'Sample' 5union all 6select * from table_A 7left join table_B_201910 on table_A = table_B_201910.id 8left join table_C_201910 on table_A = table_C_201910.id 9where table_A.name = 'Sample' 10union all 11select * from table_A 12left join table_B_201909 on table_A = table_B_201909.id 13left join table_C_201909 on table_A = table_C_201909.id 14where table_A.name = 'Sample'
上記の書き方だとテーブルを増やせば増やすほどコードが長くなってしまい大変なので
例えばJavascriptに置けるユーザー定義関数のような書き方でシンプルに書きたいのですが、
SQLでも同じようなことは可能なのでしょうか・・・?
私の知識不足でどのように調べたら解決策にたどり着くかもわからないため、
大変恐縮ですが何かしらのヒントでもご教示いただけますと幸いです。
よろしくお願い致します。
回答4件
あなたの回答
tips
プレビュー