Linq使用order by概述

开发 后端
这里介绍Linq使用order by按雇用日期对雇员进行排序和Linq使用order by、Max 和 Group By 得出每种类别中单价最高的产品,并按 CategoryID 对这组产品进行排序等方面。

本文向大家介绍Linq使用order by,可能好多人还不了解Linq使用order by,没有关系,看完本文你肯定有不少收获,希望本文能教会你更多东西。

1.简单形式

这个例子Linq使用order by按雇用日期对雇员进行排序:

  1. var q =  
  2. from e in db.Employees  
  3. orderby e.HireDate  
  4. select e; 

2.带条件形式

注意:Where和order by的顺序并不重要。而在T-SQL中,Where和order by有严格的位置限制。

  1. var q =  
  2. from o in db.Orders  
  3. where o.ShipCity == "London"  
  4. orderby o.Freight  
  5. select o; 

语句描述:使用where和order by按运费进行排序。

3.降序排序

  1. var q =   
  2. from p in db.Products  
  3. orderby p.UnitPrice descending  
  4. select p; 

4.ThenBy

语句描述:Linq使用order by对客户进行排序:

  1. var q =  
  2. from c in db.Customers  
  3. orderby c.City, c.ContactName  
  4. select c; 

5.ThenByDescending

这两个扩展方式都是用在order by/order byDescending之后的,第一个ThenBy/ThenByDescending扩展方法作为第二位排序依据,第二个ThenBy/ThenByDescending则作为第三位排序依据,以此类推

  1. var q =  
  2. from o in db.Orders  
  3. where o.EmployeeID == 1  
  4. orderby o.ShipCountry, o.Freight descending  
  5. select o; 

语句描述:Linq使用order by先按发往国家再按运费从高到低的顺序对 EmployeeID 1 的订单进行排序。

6.带GroupBy形式

  1. var q =   
  2. from p in db.Products  
  3. group p by p.CategoryID into g  
  4. orderby g.Key  
  5. select new {  
  6. g.Key,  
  7. MostExpensiveProducts =  
  8. from p2 in g  
  9. where p2.UnitPrice == g.Max(p3 => p3.UnitPrice)  
  10. select p2  
  11. }; 

语句描述:Linq使用order by、Max 和 Group By 得出每种类别中单价最高的产品,并按 CategoryID 对这组产品进行排序。

【编辑推荐】

  1. LINQ查询操作经验总结
  2. LINQ遍历多个数组深入剖析
  3. Linq查询Access数据文件浅谈
  4. LINQ构建框架设计学习笔记
  5. LINQ重要组成部分简介
责任编辑:佚名 来源: 51CTO.com
相关推荐

2009-09-09 16:01:21

Linq实体继承使用

2009-09-10 13:42:47

Linq UserIn

2009-09-10 11:10:21

Linq Librar

2009-09-08 11:25:42

Linq foreac

2009-09-18 16:20:36

LINQ基础

2009-09-18 16:07:10

Linq Where操

2009-09-18 13:44:38

LINQ设计模式

2009-09-10 16:28:17

LINQ查询

2009-09-16 17:21:53

LINQ遍历

2009-09-14 09:55:55

Linq基本语法

2009-09-11 12:13:40

LINQ to SQL

2009-09-14 15:15:45

LINQ技术

2009-09-17 11:35:40

Linq匿名类型

2009-09-11 10:16:07

Linq匿名类型

2009-09-09 16:07:16

Linq实体关系

2009-09-15 11:29:04

LINQ to SQL

2009-09-11 10:38:03

LINQ体系结构

2009-09-15 13:37:24

Linq To Sql

2009-09-18 16:12:22

LINQ TO SQL

2009-09-16 15:53:49

Linq创建xml文档
点赞
收藏

51CTO技术栈公众号