立即執行。無條件時檢查序列非空;有條件時檢查是否存在符合項目。
var q = from c in db.Customers where !c.Orders.Any() select c;
生成 SQL:WHERE NOT (EXISTS (SELECT ... FROM Orders WHERE CustomerID = c.CustomerID))
var q = from c in db.Categories where c.Products.Any(p => p.Discontinued) select c;
生成 SQL:WHERE EXISTS (SELECT ... FROM Products WHERE Discontinued=1 AND CategoryID=c.CategoryID)
var q = from c in db.Customers where c.Orders.All(o => o.ShipCity == c.City) select c;
回傳所有訂單出貨城市等於客戶城市的客戶(含無訂單者)。
string[] ids = { "AROUT", "BOLID", "FISSA" };
var q = (from o in db.Orders where ids.Contains(o.CustomerID) select o).ToList();
也可內建陣列:where (new[] { "AROUT", "BOLID", "FISSA" }).Contains(o.CustomerID)。
var order = db.Orders.First(o => o.OrderID == 10248);
var q = db.Customers.Where(c => c.Orders.Contains(order)).ToList();
string[] cities = { "Seattle", "London", "Vancouver", "Paris" };
var q = db.Customers.Where(c => cities.Contains(c.City)).ToList();