如何创建一个只返回一个表中没有外键的记录的查询

时间:2017-11-27 15:43:42

标签: sql oracle

如何创建一个只返回一个表中与特定属性没有外键关系的记录的查询?我甚至不确定如何正确地提出问题,所以我在下面给出一个例子:

我有表B.它有一个ID和其他不重要的东西 我有表C.它有一个ID,一个属性(称之为可用),它只是'是'或'否'。

表B中的每条记录在表C中可能有零个或多个与之相关的记录。它们通过表BC_Line连接,其中每个记录具有用于B_ID的FK和用于C_ID的FK。因此,如果记录C_ID = 1和C_ID = 2与B_ID = 1相关,则BC_Line有两个记录:(B_ID_FK = 1 C_ID_FK = 1)和(B_ID_FK = 1 C_ID_FK = 2)。

我想要一个只返回B中记录的查询,这些记录在C中没有关联记录且C_Available ='否'。 B中的记录可能在C中有几个相关记录,都带有“是”,并且会显示。 B中的记录可能在C中有几个相关记录都带有“否”,不会显示。 B中的记录也可能在C中有记录,有些是“是”,有些是“否”,但该记录仍然不会显示。所有相关的C记录必须为“是”。

我不知道该怎么做。我理解如何创建查询以及如何进行连接,但我不知道如何以这样的方式组合它们以获得我想要的东西。这可能是一个众所周知的问题,但我找不到答案,部分原因是我难以明确表达我的问题。

为了记录,我使用的是Oracle。

1 个答案:

答案 0 :(得分:0)

您也可以使用 private readonly CultureInfo[] _supportedCultures = { new CultureInfo("ar"), new CultureInfo("en") }; 方法。

left join