【发布时间】:2018-09-17 20:17:00
【问题描述】:
我正在尝试创建一个查询,其中所选行是根据另一个表上的数据选择的。本质上,一个表具有我们试图匹配的列名以及我们试图获取的值。
例如,假设这些是我的表格:
TABLE_1
TABLE_2_COL | VALUE
--------------------
COL_1 | dog
COL_2 | cat
COL_3 | fish
TABLE_2
id | COL_1 | COL_2 | COL_3
------------------------
1 | cow | seal | snake
2 | cow | cat | snake
3 | cow | seal | dog
4 | fish | seal | snake
我想做类似的事情
select t2.*
from TABLE_1 t1
left join TABLE_2 t2
on t2[t1.TABLE_2_COL] = t1.VALUE <- this line obviously not correct, but it's the line that respresents what I'm trying to do
会返回
id | COL_1 | COL_2 | COL_3
----------------------------
2 | cow | cat | snake
表一的“TABLE_2_COL”列将始终包含 TABLE_2 列之一的名称。由于 TABLE_2 中满足我要进行的查询的唯一行是 2(其中 COL_2 是“cat”),所以这就是返回的行。
【问题讨论】:
-
您也许可以从这个问题/答案中调整一些内容:stackoverflow.com/a/50007503/230471