私は多くの列を持つテーブルを持っています。それぞれは、それが表すデータの特定の「シナリオ」を表します。名前が2番目のクエリの結果である列の値を取得
id | col1 | col2 | col3 | col4 | col5
---+--------+--------+--------+---------+---------
1 | 1200 | 100 | 1200 | 10000 | 1300
2 | 100 | 1400 | 2300 | 1200 | 900
3 | 3300 | 1200 | 400 | 600 | 12000
エンティティを格納する別のテーブルと、このエンティティのデフォルトシナリオを格納する列があります。次のようになります。
id | city | state | default_scenario
---+------------+-------+-------------------
1 | Miami | FL | col3
2 | Detroit | MI | col2
3 | New York | NY | col1
私は結果に余分な列として、行の
default_scenario
が何であるかに応じて、第二のテーブルから結果を取得し、最初のテーブルから値を返すしたいと思います
。
これはJOIN
で行うことができますが、PHPを使用せずに同じクエリで別の列名として行の値を使用するにはどうすればよいですか?
これも可能ですか?
EDIT:
私が作るしようとしているクエリは、これを返します:
id | city | state | default_scenario | scenario_data
---+------------+-------+------------------+---------------
1 | Miami | FL | col3 | 1200
2 | Detroit | MI | col2 | 1400
3 | New York | NY | col1 | 3300
あなたはSQLで直接操作することはできません。あなたはdinamic sql(サーバー側で生成されたSQLコード)を使用する必要があります – scaisEdge