根据另一个表的列中的值从一个表中选择列名

时间:2015-06-18 03:32:14

标签: mysql sql

这可能是一个转贴;如果是这样,请链接我,我将删除。

首先,我是一个SQL新手。我有两个表table_1和table_2。我想从table_1中选择列名,这些列名只对应于表2中名为“foo”的列中的值。

我怎么能得到这个?这需要内部联接吗?

我有一些我可以发布的代码,但这是一场灾难。

1 个答案:

答案 0 :(得分:1)

这是一种类型的例子。

select * from table1 join table2 on table1.col1= table2.col2

我们遵循以上语法。

select * from table1 join table2 on table1.col1= table2.foo

这是查找column_name如何出现在另一个表

中的方法
SELECT * FROM(    SELECT letter  FROM `Table_2` ) a JOIN
(SELECT `COLUMN_NAME` 
FROM `INFORMATION_SCHEMA`.`COLUMNS` 
WHERE `TABLE_SCHEMA`='database_name' 
    AND `TABLE_NAME`='Table_1') b ON a.letter= b. COLUMN_NAME

谢谢。