Sql 如何找到一个表包含第二个表的哪些元素?
我有两个表,它们与第三个一对多关系相关。 例如,我有表A、表B和表C 表A和表B与表C的关系为多对一。所以在表C中有两个字段,比如tableAId和tableBId。因此,我需要找到一个列表,其中包括表C中与表a相关的所有元素,并将它们与表C中与表B相关的所有元素进行比较 我试着用除,减语句来做,但它不正确 以下是我尝试做的:Sql 如何找到一个表包含第二个表的哪些元素?,sql,sql-server,database,Sql,Sql Server,Database,我有两个表,它们与第三个一对多关系相关。 例如,我有表A、表B和表C 表A和表B与表C的关系为多对一。所以在表C中有两个字段,比如tableAId和tableBId。因此,我需要找到一个列表,其中包括表C中与表a相关的所有元素,并将它们与表C中与表B相关的所有元素进行比较 我试着用除,减语句来做,但它不正确 以下是我尝试做的: SELECT tableAId FROM tableC except select tableBId FROM tableC 更新 这是我的三张表:我不是100
SELECT tableAId FROM tableC
except
select tableBId FROM tableC
更新
这是我的三张表:我不是100%地遵循你的要求,但我认为下面是你想要的
SELECT a.ID, b.ID
FROM TableA a
JOIN TableC c ON a.ID = c.TableCID
JOIN TableB b ON c.TableBID = b.ID
你试过什么了吗?另外,请以格式化表格的方式显示一些示例数据(每行缩进4个空格)。这将使您的问题更加透明。您是否能通过提供的信息理解问题?我想不是。因此,请添加@TimBiegeleisen wrote之类的信息。很可能您必须在三个表之间进行一些连接,然后可能使用
除了。使用所有三个表的示例数据以及您期望的输出更新您的问题。然后任何熟悉SQL标记的人都可以给你一个查询。你还需要在头脑中弄清楚行和列之间的区别。它们在SQL中是截然不同的概念(与电子表格相比,在电子表格中它们是可互换的)。