查找某个表中不存在的记录
本文关键字:不存在 记录 查找 | 更新日期: 2023-09-27 18:18:55
我有2个表(表Mngr和VWE)我希望我的查询返回table Mngr
记录,其中w.Mdl
和o.CM
相等(所有模型相等),但在表VWE中不存在。
有人能帮我写吗?
table Mngr table VWE
------------ -----------
CM CV Mdl Vrs
a 5 a 1
b 2
a 3
这里:我希望它返回CM a and CV 5
表Mngr
中的行,因为版本5是新的
你能帮我如何用Linq写吗?
var q = (from o in Mngr
from v in VWE
.Where(w=>
w.Mdl == o.CM &&
w.Vrs != o.CV)
where o.Mod == 1
select o).distinct();
谢谢
您应该检查VME
set中是否没有匹配记录:
Mngr.Where(m => m.Mod == 1 && !VME.Any(v => v.Mdl == m.CM && v.Vrs == m.CV))
查询语法from m in Mngr
where m.Mod == 1 !VME.Any(v => v.Mdl == m.CM && v.Vrs == m.CV)
select m
试试这个查询
from s in context.Mngr
where !context.VWE.Any(es=>(es.mdl==s.cm)&&(es.vrs==s.vc))
select s;
考虑到
o。表VWE中不存在cv
var query = Mngr.Where(m => VWE.Any(v => v.Mdl == m.CM) &&
!VWE.Any(v => v.Vrs == m.CV));