我有2个表(表Mngr和VWE)我希望我的查询返回 Sub CheckBox1_Click()
Dim SrcRange As Range
Dim TrgRange As Range
If CheckBox1 = 1 Then
Set SrcRange = Worksheets("Data Sheet").Range("A1:E3")
Set TrgRange = Worksheets("Sheet1").Range("A1:E3")
SrcRange.Copy
TrgRange.PasteSpecial _
Paste:=xlPasteValues
End If
End Sub
和table Mngr
相等的w.Mdl
记录(所有相同的模型)但是表VWE中不存在o.cv。
任何人都可以帮我写作吗?
o.CM
在这:我希望它返回表 table Mngr table VWE
------------ -----------
CM CV Mdl Vrs
a 5 a 1
b 2
a 3
中Mngr
的行,因为版本5是新的
你能帮我解决一下如何用Linq写的吗?
CM a and CV 5
感谢
答案 0 :(得分:1)
您应该检查VME
集合中是否存在匹配的记录:
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
答案 1 :(得分:0)
尝试此查询
from s in context.Mngr
where !context.VWE.Any(es=>(es.mdl==s.cm)&&(es.vrs==s.vc))
select s;
答案 2 :(得分:0)
这应该对你有用,考虑到
表VWE中不存在o.cv
var query = Mngr.Where(m => VWE.Any(v => v.Mdl == m.CM) &&
!VWE.Any(v => v.Vrs == m.CV));