我想从一个表中获取特定列值,并使用这些值从另一个表中获取信息。
我将使用此示例:table1和table2都包含具有“name”列的行。
我想从table1会议条件中选择所有“name”列的值,然后从table2中选择包含从table1中选择的任何名称的行。基本思路如下。
SELECT `name` FROM table1 WHERE...
SELECT `name` FROM table2 WHERE `name` IN(names from the above query)
希望这很清楚,谢谢。
答案 0 :(得分:1)
在第二个问题中“注入”您的第一个查询:
SELECT name FROM table2 WHERE name IN(SELECT name FROM table1 WHERE...)
答案 1 :(得分:0)
除了KayKay的回答,您还可以使用EXISTS:
SELECT name FROM table2 t2
WHERE EXISTS( SELECT 1
FROM table t1
WHERE t2.name = t1.name)