如何在SQLite中递归地嵌套来自同一个表的两个查询?

如何在SQLite中递归地嵌套来自同一个表的两个查询?,sqlite,Sqlite,因此,我有一个名为“data”的表,如下所示: ID|Name --|---- 01|Bob 01|John 01|Hal 02|Bob 02|Mike 03|Hal 03|Mike 03|John 03|Dave 04|Hal 04|Bob 我可以构建一个如下的查询 SELECT ID FROM data WHERE Name='Bob'; 我得到了预期的结果01,02,04。现在我要做的是在同一个查询中,询问与这些ID关联的所有名称。大概是这样的: SELECT Name FROM da

因此,我有一个名为“data”的表,如下所示:

ID|Name
--|----
01|Bob
01|John
01|Hal
02|Bob
02|Mike
03|Hal
03|Mike
03|John
03|Dave
04|Hal
04|Bob
我可以构建一个如下的查询

SELECT ID FROM data WHERE Name='Bob';
我得到了预期的结果01,02,04。现在我要做的是在同一个查询中,询问与这些ID关联的所有名称。大概是这样的:

SELECT Name FROM data WHERE ID=1 OR ID=2 OR ID=4;
这给了我鲍勃,约翰,哈尔,鲍勃,迈克,戴夫,鲍勃的结果

但我真正想要的是

SELECT Name FROM data WHERE ID=(SELECT ID FROM data WHERE Name='Bob';);
这应该会给我鲍勃,约翰,哈尔,鲍勃,迈克,哈尔,鲍勃的结果。

我想你在找“IN”接线员

这应该行得通

SELECT Name FROM data WHERE ID IN (SELECT ID FROM data WHERE Name = 'Bob');
使用中的
,因为必须将ID与子查询生成的多个结果进行比较

SELECT Name FROM data WHERE ID IN (SELECT ID FROM data WHERE Name = 'Bob');