SQLでテーブルからカラム名を取得し別のテーブルの取得したカラム名の値を取得する

実現したいこと

table1

id table2_columnName
01 column1
02 column2
03 column3

table2

name column1 column2 column3
name 10 20 30

上記のようなテーブル(必要部分のみ記述)が存在しており、
table1から[table2_columnName]の値を取得してtable2から取得したカラム名の値を取得したい。

前提

SQL Server 2019

発生している問題・エラーメッセージ

これをSQLのみで実行したいのですが可能なのでしょうか?
webでうまく指定して検索できなかったのでこちらで質問しております。

イメージとしては下記のような形です。

SQL

1SELECT (2 SELECT table2_columnName 3 FROM table1 4 WHERE id = '01'5 )6FROM table2

ここで副問い合わせで取得した内容(column1)を文字列として表示するのではなくカラム名としてSQLを実行し、
table2のcolumn1の値である10を取得したいです。

コメントを投稿

0 コメント