LINQ to SQL語句(1)之Where

適用場景:實現過濾,查詢等功能。spa

說明:與SQL命令中的Where做用類似,都是起到範圍限定也就是過濾做用的,而判斷條件就是它後面所接的子句。Where操做包括3種形式,分別爲簡單形式、關係條件形式、First()形式。下面分別用實例舉例下:code

1.簡單形式:

例如:使用where篩選在倫敦的客戶blog

var q =
    from c in db.Customers
    where c.City == "London"
    select c;

再如:篩選1994 年或以後僱用的僱員:ip

var q =
    from e in db.Employees
    where e.HireDate >= new DateTime(1994, 1, 1)
    select e;

2.關係條件形式:

篩選庫存量在定貨點水平之下但未斷貨的產品:產品

var q =
    from p in db.Products
    where p.UnitsInStock <= p.ReorderLevel && !p.Discontinued
    select p;

篩選出UnitPrice 大於10 或已停產的產品:it

var q =
    from p in db.Products
    where p.UnitPrice > 10m || p.Discontinued
    select p;

下面這個例子是調用兩次where以篩選出UnitPrice大於10且已停產的產品。class

var q =
    db.Products.Where(p=>p.UnitPrice > 10m).Where(p=>p.Discontinued);

3.First()形式:

返回集合中的一個元素,其實質就是在SQL語句中加TOP (1)。select

簡單用法:選擇表中的第一個發貨方。im

Shipper shipper = db.Shippers.First();

元素:選擇CustomerID 爲「BONAP」的單個客戶查詢

Customer cust = db.Customers.First(c => c.CustomerID == "BONAP");

條件:選擇運費大於 10.00 的訂單:

Order ord = db.Orders.First(o => o.Freight > 10.00M);
相關文章
相關標籤/搜索