zoukankan      html  css  js  c++  java
  • LINQ中的一些查询语句格式


    LINQ的基本格式如下所示:
    var <变量> = from <项目> in <数据源> where <表达式> orderby <表达式>

    LINQ 基本子句
    from查询子句——基础
    后面跟随着项目名称和数据源
    示例代码如下:
    var str = from lq in str select lq;
    其中select语句指定了返回到集合变量中的元素是来自哪个数据源的

    from查询子句——嵌套查询
    可以在from子句中嵌套另一个from子句即可,示例代码如下所示。
    var str = from lq in str from m in str2 select lq;

    where条件子句
    where子句指定了筛选的条件,这也就是说在where子句中的代码段必须返回布尔值才能够进行数据源的筛选
    示例代码如下:
    var str = from m in MyList where m.Length > 5 select m;

    where子句查询
    当需要多个where子句进行复合条件查询时,可以使用“&&”进行where子句的整合
    示例代码如下:
    var str = from m in myList where (m.Length > 6 && m.Contains("liu")) select m;


    group分组子句
    语句格式:var str = from p in PersonList group p by p.age
    group子句将数据源中的数据进行分组,在遍历数据元素时,并不像前面的章节那样直接对元素进行遍历,因为group子句返回的是元素类型为IGrouping<TKey,TElement>的对象序列,必须在循环中嵌套一个对象的循环才能够查询相应的数据元素。
    在使用group子句时,LINQ查询子句的末尾并没有select子句,因为group子句会返回一个对象序列,通过循环遍历才能够在对象序列中寻找到相应的对象的元素,如果使用group子句进行分组操作,可以不使用select子句。

    orderby排序子句
    语句格式:var str = from p in PersonList orderby p.age select p;
    orderby子句中使用descending关键字进行倒序排列
    示例代码如下:
    var str = from p in PersonList orderby p.age descending select p;
    orderby子句同样能够进行多个条件排序,只需要将这些条件用“,”号分割即可
    示例代码如下:
    var str = from p in PersonList orderby p.age descending,p.name select p;

    join连接子句
    在LINQ中同样也可以使用join子句对有关系的数据源或数据对象进行查询,但首先这两个数据源必须要有一定的联系
    var str = from p in PersonList join car in CarList on p.cid equals car.cid select p;

  • 相关阅读:
    Shell变量之自定义变量、环境变量
    Shell变量命名规则
    获取文件编码格式
    基于Lucene的文件检索Demo
    数据库压力测试工具
    插入ts以及判断列是否存在(支持多数据库)
    (摘)Chart属性设置
    (摘)C#comboBox绑定数据
    (摘)ORACLE DBA的职责
    (摘)DataGuard物理standby管理
  • 原文地址:https://www.cnblogs.com/xiaz/p/5324297.html
Copyright © 2011-2022 走看看