我的数据库中有两个名为tblStockManagement
和tblFolding
的表。我在Name
表中列tblFolding
,在FoldingID
表中将列tblStockManagement
作为外键。现在我的Winform中有comboBox,我希望来自Names
表的组合框中的tblFolding
项,但只有那些不在tblStockManagement
表中的项目。
(因为如果数据已经在tblStockManagement
表中,我不想再次选择数据。相反,我将在稍后更新数量。)
这些是两个表的屏幕截图。请告诉我我该怎么做
答案 0 :(得分:1)
NOT EXISTS
版本:
select *
from tblFolding f
where not exists (select * from tblStockManagement SM
where sm.FoldingID = f.FoldingID)
NOT EXISTS
是" NULL安全",NOT IN
不是
答案 1 :(得分:0)
这是你需要的。基本上是一个子查询,它获取所有折叠ID并且不在运算符I中使用,不包括那些匹配集。
SELECT Name
FROM tblFolding
WHERE FoldingID NOT IN (
SELECT FoldingID
FROM tblStockManagement
)
;
答案 2 :(得分:0)
您可以使用SQL NOT条件
Select Name
From tblFolding
Where FoldingId Not In (Select FoldingId From tblStockManagement)
Order By Name