如何使用'not in'查询Oracle SQL和Microsoft SQL

本文关键字:SQL Microsoft Oracle not 何使用 in 查询 | 更新日期: 2023-09-27 18:02:13

我有两个数据库,我在其中工作。Oracle SQL和Microsoft SQL。我想选择只有那些值在oracle数据库中不存在于sql server表(基于一个共同的列在两个数据库)。我的查询如下

select instr_no from oracle.table where instr_no not in (select instr_no from microsoft.table where createdby is not null)
在c#中,我创建了数据表,并在数据表中存储sql server表的值。现在我如何选择那些不存在于这个数据表(基于sql server表)的oracle表值,提前谢谢。

编辑

我已经使用以下查询完成了:

 var myvar = dt.AsEnumerable().Select(r => r.Field<string>("instr_no")).Except(dt1.AsEnumerable().Select(r => r.Field<string>("instr_no")));
上面的

运行得非常好。有一个问题,我需要将myvar变量再次转换为数据表。

如何使用'not in'查询Oracle SQL和Microsoft SQL

这应该可以工作,使您的表之间的差异

var idsNotInB = oracle.table.AsEnumerable()
        .Except(microsoft.table.AsEnumerable()
        .Where(m => m.createdby != null));
编辑:

也许这也可以帮助你比较两个数据表中的数据