SQL:选择表中存在于有复合键的Select查询中的所有记录

SQL:选择表中存在于有复合键的Select查询中的所有记录,sql,sqlite,Sql,Sqlite,我想从同样存在于select查询中的表中选择所有记录。本例中的表具有复合键。我想要一些类似于 SELECT * FROM Table WHERE (FOO, BAR) IN SELECT... 其中FOO,BAR是我的复合键,请选择。。。是一个select查询。我应该如何更改以上内容才能使其正常工作?尝试以下查询: SELECT * FROM Table JOIN (SELECT... ) AS a ON Table.FOO=a.FOO AND Table.BAR=a.BAR 请尝试以下

我想从同样存在于select查询中的表中选择所有记录。本例中的表具有复合键。我想要一些类似于

SELECT * FROM Table
WHERE 
(FOO, BAR) IN
SELECT...
其中FOO,BAR是我的复合键,请选择。。。是一个select查询。我应该如何更改以上内容才能使其正常工作?

尝试以下查询:

SELECT *
FROM Table
JOIN (SELECT...
) AS a 
ON Table.FOO=a.FOO AND Table.BAR=a.BAR
请尝试以下查询:

SELECT *
FROM Table
JOIN (SELECT...
) AS a 
ON Table.FOO=a.FOO AND Table.BAR=a.BAR

似乎您正在寻找的是存在的:


似乎您正在寻找的是存在的:


我想说的是SELECT*从表中的FOO,BAR中选择你想要的你已经用过这个词了:SELECT。。。从存在的位置中选择*从b中选择b.x=。。。和@user2196728 SQLite不支持元组比较。好的,对不起,我没有注意到它与SQLite相关,对不起…我会说SELECT*从FOO所在的表中,在SELECT WANY中选择您想要的。您已经使用了EXISTS这个词:SELECT。。。从存在的位置中选择*从b中选择b.x=。。。和@user2196728 SQLite不支持元组比较。好的,很抱歉,我没有注意到它与SQLite相关,很抱歉…如果子表中的多个记录符合该条件,则联接将返回其他记录-在这里,EXISTS是一个更合适的解决方案。是的,我想我在这些情况下的反射就是GROUP BY table.ID。我想在极少数情况下,这可能不存在和/或不明显。出于某种原因,我反对EXISTS,我倾向于选择1…如果子表中的多个记录符合该条件,则联接将返回额外的记录-EXISTS在这里是一个更合适的解决方案。是的,我想在这些情况下我的反射就是GROUP BY table.ID。我想在极少数情况下,这可能不存在和/或不明显。由于某种原因,我反对存在,我倾向于选择1。。。。