1,求和

       var datas = SellOutActualData.Where(b => b.BrandCode == brandExportParam.BrandInfo.BrandCode && b.ReportMonth == item.Month);
       decimal sumValue = datas.Sum(a => a.Amount);

2,Linq筛选,转换成指定类

var query = dbContext.TWSalesRecord.Where(d => d.DataSource == "HCT");
//筛选字段HCTAccount中的值要在 model.AccountList内
query = query.Where(d => model.AccountList.Contains(d.HCTAccount));

List<TWSalesData> data = query.Where(d => d.ReportMonth >= model.StartDate
                                       && d.ReportMonth <= model.EndDate
                                       && !string.IsNullOrEmpty(d.GSKGMMCode))
                              .Select(d => new TWSalesData
                                          {
                                              Account = d.HCTAccount,
                                              GMMCode = d.GSKGMMCode,
                                              ReportMonth = d.ReportMonth,
                                              Amount = d.GSKAmount
                                         }).ToList();           //将最终的结果转为Sales类集合

3,linq筛选,转换成 “字典”

private Dictionary<string, TWProducts> products = new Dictionary<string, TWProducts>();
products = db.TWProducts.ToDictionary(d => d.GMMCode, d => d);

4,分组查询

结果是,某个分销商,在某月中的 某个商品的 “总销售额” 和 “数量” 是多少

 List<SalesDataModel> sales = (from data in db.TWSalesRecord

                                          group data by new
                                          {
                                              data.HCTAccount,       //根据分销商,月份,商品编码分组
                                              data.ReportMonth,
                                              data.GSKGMMCode

                                          } into d
                                          select new SalesDataModel
                                          {
                                              Account = d.Select(s => s.HCTAccount).FirstOrDefault(),
                                              Month = d.Select(s => s.ReportMonth).FirstOrDefault(),
                                              GMMCode = d.Select(s => s.GSKGMMCode).FirstOrDefault(),
                                              Value = d.Sum(s => s.GSKAmount)/,
                                              Quantity = d.Sum(s => s.Quantity)
                                          }).ToList();

5,简单计算函数(sum,max,min,count)

//linq
Var ss=(from r in db.table select r).max(p=>p.id);
                                    .min(p=>p.id);
                                    .sum(p=>p.id);
                                    .count();
//Lambda
Var ss1=db.table.max(p=>p.id);
Var ss1=db.table.min(p=>p.id);
Var ss1=db.table.sum(p=>p.id);
Var ss1=db.table.count();

项目中写到看到的一些LINQ和Lambda语句的更多相关文章

  1. 【Filter 不登陆无法访问】web项目中写一个过滤器实现用户不登陆,直接给链接,无法进入页面的功能

    在web项目中写一个过滤器实现用户不登陆,直接给链接,无法进入页面,而重定向到登陆界面的功能. 项目是用springMVC+spring+hibernate实现 (和这个没有多大关系) 第一步: 首先 ...

  2. 解决:一个项目中写多个包含main函数的源文件并分别调试运行

    自己在学c++的时候,一个项目中的多个cpp文件默认不允许多个main函数的出现,但是通过选项操作能够指定单个cpp文件进行运行,如下: 1.此时我就想运行第二个cpp文件,我们只需要把其他的两个右键 ...

  3. 自己在项目中写的一个Jquery插件和Jquery tab 功能

    后台查询结果 PDFSearchResult实体类: [DataContract(Name = "PDFSearchResult")] public class PDFSearch ...

  4. 如何在python项目中写出像Django中一样功能的settings

    一  核心文件目录结构 二  实现代码 resdme: 在实现此功能主要用到的知识点及模块: 1.反射 3.内置方法dir # 全局配置 NAME = 'root' # 用户配置 NAME = 'pe ...

  5. 有WebService的项目中写applicationContex.xml文件时应注意!!!

    这是一个简单的WebService实例,来看下如下的applicationContex.xml文件: 1.有XFire的配置 <bean id="baseWebService" ...

  6. 简述项目中优化sql的方法,从哪些方面,sql语句性能如何分析?

    查询速度慢的原因很多,常见如下几种 : .没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷) .I/O吞吐量小,形成了瓶颈效应. .没有创建计算列导致查询不优化. .内存不足 .网络 ...

  7. Excel VBA 若要在64位系统上使用,则必须更新此项目中的代码,请检查并更新Declare语句,然后用PtrSafe属性标记它们

    在Office 2010 32位上开发的Excel VBA系统,迁移到Office 2010 64位下面,打开后使用,报下面错误: 解决办法:  在Declare 后面加PtrSafe 进行标记

  8. SQL语句对应的LINQ和Lambda语句

    1. 查询Student表中的所有记录的Sname.Ssex和Class列.select sname,ssex,class from studentLinq:    from s in Student ...

  9. 项目中jquery插件ztree使用记录

    最近公司要求做一个关于后台的管理系统.在这个mvvm模式横行的年代,虽然这里用jquery做项目可能有点不符合时代的潮流,但是管他呢,能做出来先在说呗(公司以后要改用angular或者vue来统一前端 ...

随机推荐

  1. MySQL性能基准测试对比:5.7 VS 8.0

    本文由云+社区发表 作者:数据库 版权声明:本文由腾讯云数据库产品团队整理,页面原始内容来自于severalnines英文官网,若转载请注明出处.翻译目的在于传递更多全球最新数据库领域相关信息,并不意 ...

  2. 【经典案例】Python详解设计模式:策略模式

    完成一项任务往往有多种方式,我们将其称之为策略. 比如,超市做活动,如果你的购物积分满1000,就可以按兑换现金抵用券10元,如果购买同一商品满10件,就可以打9折,如果如果购买的金额超过500,就可 ...

  3. 校园生活app结对开发第二天

    昨天进行了android studio的安装与配置遇到很多问题,在gradel处遇到很多问题,安装版本错误等等,在百度和书籍的帮助下成功安装 今天要做登陆界面开发

  4. Effective Java目录

    创建和销毁对象 考虑用静态工厂方法代替构造器 遇到多个构造器参数时要考虑用构建器 用私有构造器或者枚举类型强化Singleton属性 通过私有构造器强化不可实例化能力 避免创建不必要的对象 消除过期的 ...

  5. 自己实现的typeOf函数1

    自己实现的typeOf函数:返回传入参数的类型 主要用于解决,js自带的typeof返回结果不精确:Ext JS中typeOf对字符串对象.元素节点.文本节点.空白文本节点判断并不准确的问题 js代码 ...

  6. element表格添加序号

    表格代码:黄色部分为序号列关键代码上图: <el-table :data="tableData" border height="480" style=&q ...

  7. http协议、模块、express框架以及路由器、中间件和mysql模块

    一.http协议 是浏览器和web服务器之间的通信协议 1.通用头信息 request url:请求的url,向服务器请求的数据 request method:请求的方式   get.post sta ...

  8. 学习笔记—XML

    XML XML简介 XML指可扩展标记语言(EXtensible Markup Language),是一种标记语言. XML是一种灵活的语言,标签没有被预定义,需要自行定义标签. 通常,XML被用于信 ...

  9. 洛谷P3366 【模板】最小生成树(Boruvka算法)

    题意 题目链接 Sol 自己yy着写了一下Boruvka算法. 算法思想很简单,就是每次贪心的用两个联通块之间最小的边去合并. 复杂度\(O(n \log n)\),然鹅没有Kruskal跑的快,但是 ...

  10. CentOS7 firewalld 打开关闭端口

    1. firewalld的基本使用 启动: systemctl start firewalld 关闭: systemctl stop firewalld 查看状态: systemctl status ...