LINQ to SQL 语句(1)之 Where

LINQ to SQL 语句(1)之 Where

  

Where 操作

 适用场景:实现过滤,查询等功能。

 

说明:与 SQL 命令中的 Where 作用相似,都是起到范围限定也就是过滤作用的 ,而判断条

件就是它后面所接的子句。

 

Where 操作包括 3 种形式,分别为简单形式、关系条件形式、First()形式。下 面分别用实例

举例下:

 1.简单形式:

例如:使用 where 筛选在伦敦的客户

 

var q = 

from c in db.Customers 

where c.City == "London" 

select c; 

 

再如:筛选 1994  年或之后雇用的雇员:

 

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  或已停产的产品:

 

var q = 

from p in db.Products 

where p.UnitPrice > 10m || p.Discontinued 

select p; 

 

下面这个例子是调用两次 where 以筛选出 UnitPrice 大于 10 且已停产的产品。

 

var q = 

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

 

 

3.First()形式:

 

主要用于MVC中 

返回集合中的一个元素,其实质就是在 SQL 语句中加 TOP (1)。

 

简单用法:选择表中的第一个发货方。

  

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); 

posted @ 2013-06-28 22:37  岳帅超  阅读(325)  评论(0编辑  收藏  举报