Dee*_*ent 1 c# linq linqpad linq-to-sql
下面有两个linq查询,它们返回完整的差异结果,第一个查询返回4个记录,第二个返回72个记录.我认为他们是一样的.谁能解释为什么他们会返回差异记录集.谢谢你的帮助.
void Main()
{
var q1 = from c in Customers
where !c.Orders.Any(o => o.OrderDetails.Sum(od => od.UnitPrice * od.Quantity) < 1000)
select new {c.CustomerID, c.ContactName};
q1.Dump();
var q2 = from c in Customers
where c.Orders.Any(o => o.OrderDetails.Sum(od => od.Quantity * od.UnitPrice) >= 1000)
select new {c.CustomerID, c.ContactName};
q2.Dump();
}
Run Code Online (Sandbox Code Playgroud)
p.s*_*w.g 11
换句话说,想象一个客户将总价格低于1000的一个订单,以及另一个总价格大于1000的订单.由于订单较小,客户记录不会包含在第一个结果集中,而是因为较大的顺序,将被包括在所述第二结果集.