步步为营VS 2008 + .NET 3.5(5) - LINQ查询操作符之Select、Where、OrderBy、OrderByDescending、GroupBy、Join、GroupJoin及其对应的查询语法

uniapp实现app版本发现新版本后,自动更新 app实现自动更新 阅读详情
[索引页]
[源码下载]


步步为营VS 2008 + .NET 3.5(5) - LINQ查询操作符之Select、Where、OrderBy、OrderByDescending、GroupBy、Join、GroupJoin及其对应的查询语法


作者: webabcd


介绍
    ·Select - Select选择;延迟
    ·Where - Where查询;延迟
    ·OrderBy - 按指定表达式对集合正序排序;延迟
    ·OrderByDescending - 按指定表达式对集合倒序排序;延迟
    ·GroupBy - 分组;延迟
    ·Join - Join查询;延迟
    ·GroupJoin - 分组Join查询;延迟
    ·以上查询操作符所对应的查询语法


示例
Summary.aspx.cs
using  System;
using  System.Data;
using  System.Configuration;
using  System.Collections;
using  System.Linq;
using  System.Web;
using  System.Web.Security;
using  System.Web.UI;
using  System.Web.UI.WebControls;
using  System.Web.UI.WebControls.WebParts;
using  System.Web.UI.HtmlControls;
using  System.Xml.Linq;

using  System.Collections.Generic;
using  DAL;

public  partial  class  LINQ_Summary : System.Web.UI.Page
{
    NorthwindDataContext _ctx 
= new NorthwindDataContext();
    
string[] _ary = null;

    
protected void Page_Load(object sender, EventArgs e)
    
{
        _ary 
= new string[] { "asp.net", "csharp", "xhtml", "css", "javascript", 
            
"wcf", "wpf", "silverlight", "linq", "wf", 
            
"sqlserver", "asp.net ajax", "ssis", "ssas", "ssrs" }
;

        
// Select - Select选择;延迟
        Summary_Select();

        
// Where - Where查询;延迟
        Summary_Where();

        
// OrderBy - 按指定表达式对集合正序排序;延迟
        
// OrderByDescending - 按指定表达式对集合倒序排序;延迟
        Summary_OrderBy_OrderByDescending();

        
// GroupBy - 分组;延迟
        Summary_GroupBy();

        
// Join - Join查询;延迟
        Summary_Join();

        
// GroupJoin - 分组Join查询;延迟
        Summary_GroupJoin();
    }

}

Select - Select选择;延迟
     /// <summary>
    
/// Select - Select选择;延迟
    
/// </summary>

     void  Summary_Select()
    
{
        
// 使用Select查询操作符
        var categories = _ctx.Categories.Select(
            c 
=> new { CategoryName = "类别名称:" + c.CategoryName });

        
foreach (var c in categories)
        
{
            result.InnerHtml 
+= c.CategoryName + "<br />";
        }

        result.InnerHtml 
+= "<br />";


        
// 与上面的Select查询操作符相对应的查询语法
        var categories2 = from c in _ctx.Categories
                          select 
new { CategoryName = "类别名称:" + c.CategoryName };

        
foreach (var c in categories2)
        
{
            result.InnerHtml 
+= c.CategoryName + "<br />";
        }

        result.InnerHtml 
+= "<br />";
    }
运行结果
类别名称:Beverages
类别名称:Condiments
类别名称:Confections
类别名称:Dairy Products
类别名称:Grains/Cereals
类别名称:Meat/Poultry
类别名称:Produce
类别名称:Seafood

Where - Where查询;延迟
     /// <summary>
    
/// Where - Where查询;延迟
    
/// </summary>

     void  Summary_Where()
    
{
        
// 使用Where查询操作符
        var ary = _ary.Where(a => a.StartsWith("w") && a.EndsWith("f"));

        
foreach (string s in ary)
        
{
            result.InnerHtml 
+= s + "<br />";
        }

        result.InnerHtml 
+= "<br />";


        
// 与上面的Where查询操作符相对应的查询语法
        var ary2 = from a in _ary
                   where a.StartsWith(
"w") && a.EndsWith("f")
                   select a;

        
foreach (string s in ary2)
        
{
            result.InnerHtml 
+= s + "<br />";
        }

        result.InnerHtml 
+= "<br />";
    }
运行结果

wcf
wpf
wf

OrderBy - 按指定表达式对集合正序排序;延迟
OrderByDescending - 按指定表达式对集合倒序排序;延迟
     /// <summary>
    
/// OrderBy - 按指定表达式对集合正序排序;延迟
    
/// OrderByDescending - 按指定表达式对集合倒序排序;延迟
    
/// </summary>

     void  Summary_OrderBy_OrderByDescending()
    
{
        
// 使用OrderBy查询操作符
        var ary = (from a in _ary
                   select a).OrderBy(a 
=> a.Length); // OrderByDescending与OrderBy用法相同

        
foreach (string s in ary)
        
{
            result.InnerHtml 
+= s + "<br />";
        }

        result.InnerHtml 
+= "<br />";


        
// 与上面的OrderBy查询操作符相对应的查询语法
        var ary2 = from a in _ary
                   orderby a.Length ascending 
// orderby xxx descending与orderby xxx ascending用法相同
                   select a;

        
foreach (string s in ary2)
        
{
            result.InnerHtml 
+= s + "<br />";
        }

        result.InnerHtml 
+= "<br />";
    }
运行结果
wf
css
wcf
wpf
linq
ssis
ssas
ssrs
xhtml
csharp
asp.net
sqlserver
javascript
silverlight
asp.net ajax

GroupBy - 分组;延迟
     /// <summary>
    
/// GroupBy - 分组;延迟
    
/// </summary>

     void  Summary_GroupBy()
    
{
        
// 使用GroupBy查询操作符
        var list = (from a in _ary
                    select a).GroupBy(a 
=> a.Length).Select(
                        g 
=> new { Group = g.Key, Member = g });

        
foreach (var g in list)
        
{
            result.InnerHtml 
+= g.Group + "个字符:<br />";

            
foreach (string s in g.Member)
            
{
                result.InnerHtml 
+= "--" + s + "<br />";
            }

        }

        result.InnerHtml 
+= "<br />";


        
// 与上面的GroupBy查询操作符相对应的查询语法
        var list2 = from a in _ary
                    group a by a.Length into g
                    select 
new { Group = g.Key, Member = g };

        
foreach (var g in list2)
        
{
            result.InnerHtml 
+= g.Group + "个字符:<br />";

            
foreach (string s in g.Member)
            
{
                result.InnerHtml 
+= "--" + s + "<br />";
            }

        }

        result.InnerHtml 
+= "<br />";
    }
运行结果

7个字符:
--asp.net
6个字符:
--csharp
5个字符:
--xhtml
3个字符:
--css
--wcf
--wpf
10个字符:
--javascript
11个字符:
--silverlight
4个字符:
--linq
--ssis
--ssas
--ssrs
2个字符:
--wf
9个字符:
--sqlserver
12个字符:
--asp.net ajax

Join - Join查询;延迟
     /// <summary>
    
/// Join - Join查询;延迟
    
/// </summary>

     void  Summary_Join()
    
{
        
// 使用Join查询操作符
        var products = _ctx.Products.Join(
            _ctx.Categories, 
            p 
=> p.CategoryID, 
            c 
=> c.CategoryID, 
            (p, c) 
=> new { c.CategoryName, p.ProductName }).Take(5);

        
foreach (var p in products)
        
{
            result.InnerHtml 
+= p.CategoryName + " - " + p.ProductName + "<br />";
        }

        result.InnerHtml 
+= "<br />";


        
// 与上面的Join查询操作符相对应的查询语法
        var products2 = (from p in _ctx.Products
                         join c 
in _ctx.Categories
                         on p.CategoryID equals c.CategoryID
                         select 
new { c.CategoryName, p.ProductName }).Take(5);

        
foreach (var p in products2)
        
{
            result.InnerHtml 
+= p.CategoryName + " - " + p.ProductName + "<br />";
        }

        result.InnerHtml 
+= "<br />";
    }
运行结果

Beverages - Chai
Beverages - Chang
Condiments - Aniseed Syrup
Condiments - Chef Anton's Cajun Seasoning
Condiments - Chef Anton's Gumbo Mix

GroupJoin - 分组Join查询;延迟
     /// <summary>
    
/// GroupJoin - 分组Join查询;延迟
    
/// </summary>

     void  Summary_GroupJoin()
    
{
        
// 使用GroupJoin查询操作符
        var products = _ctx.Categories.GroupJoin(
            _ctx.Products, 
            c 
=> c.CategoryID, 
            p 
=> p.CategoryID, 
            (p, g) 
=> new { p.CategoryName, ProductCount = g.Count() });

        
foreach (var g in products)
        
{
            result.InnerHtml 
+= g.CategoryName + ":" + g.ProductCount + "<br />";

        }

        result.InnerHtml 
+= "<br />";


        
// 与上面的GroupJoin查询操作符相对应的查询语法
        var products2 = from c in _ctx.Categories
                        join p 
in _ctx.Products on c.CategoryID equals p.CategoryID into g
                        select 
new { CategoryName = c.CategoryName, ProductCount = g.Count() };


        
foreach (var g in products2)
        
{
            result.InnerHtml 
+= g.CategoryName + ":" + g.ProductCount + "<br />";

        }

        result.InnerHtml 
+= "<br />";
    }
运行结果

Beverages:12
Condiments:12
Confections:13
Dairy Products:10
Grains/Cereals:7
Meat/Poultry:6
Produce:5
Seafood:12



OK
[源码下载] 
ENVI-met新手必看:从零开始创建城市微气候模型(附详细步骤+底图制作技巧) 本文为ENVI-met新手提供从零开始创建城市微气候模型的详细指南,包括环境准备、参数配置、底图制作技巧和三维模型构建步骤。特别针对常见问题提供解决方案,帮助初学者快速掌握城市微气候模拟技术,提升建模效率。 阅读详情

相关推荐

Flink CDC 3.0 详解

Flink CDC 是基于数据库日志 CDC(Change Data Capture)技术的实时数据集成框架,支持全增量一体化、无锁读取、并行读取、表结构变更自动同步、分布式架构等高级特性。配合Flink 优秀的管道能力和丰富的上下游生态,Flink CDC 可以高效实现海量数据的实时集成。Flink CDC 于2023年12月7日重磅推出其全新的 3.0 版本,3.0版本的发布对 Flink CDC 而言具有里程碑的意义,自此 Flink CDC 从捕获数据变更的Flink 数据源正式迈向为以 Flink

奔跑的蜗牛的博客 2638

C# List转DataTable

public static DataTable ListToDataTable<T>(List<T> list) { //创建一个名为"tableName"的空表 DataTable dt = new DataTable("tableName"); //创建传入对象名称的列 foreach (var item in list.FirstOrDefault(...

Acsxionian的博客 637

数据结构——滑动窗口

入:下标为 i 的元素进入窗口,更新相关统计量。如果 i < k−1 则重复第一步更新:更新答案。一般是更新最大值 / 最小值出:下标为 i−k+1 的元素离开窗口,更新相关统计量✔1. 定长子串中元音的最大数目✔2. 找到一个数字的 K 美丽值✔4. 子数组的最大平均数 |方法一:前缀和方法二:滑动窗口7. 得到 K 个黑块的最少涂色次数8. 爱生气的书店老板9. 几乎唯一子数组的最大和10. 长度为 K 子数组中的最大和11. 可获得的最大点数12. 最少交换次数来组合所有的1 ||

qq_68915288的博客 762

C#学习之List的select、where和group by

第四章 C#学习之List的select、where和group by。

Justinyh的博客 2万+

华为灵衢UB总线介绍

华为发布"灵衢"(UB)超节点互联协议,旨在构建支持AI大模型计算的基础设施。该协议采用统一内存语义和对等架构,使设备可直接访问远程内存,实现资源池化。技术突破包括2.1微秒超低时延和TB级带宽,支持64节点、52万张昇腾卡的集群互联。相比传统RDMA,"灵衢"更注重系统级资源调度,而非单纯数据传输。华为开放技术规范,推动生态建设,已有厂商开发兼容IP核。"灵衢"可适应x86、RISC-V等架构,未来将扩展至百万卡规模集群。

技术引领业务创新 4416

《计算机科学概论(第13版)》5-12章

定序是按给定语句的顺序应用每个算法步骤。(primitive):建立一组定义明确的构建块,利用它们来构造和执行算法的表示。可以消除歧义,不会引起误解,就像咱们传统的自然语言(用英语来沟通交流)。(programming language):原语的集合以及说明如何组合这些原语来表示比较复杂的想法的规则集合。用程序设计语言描述的算法可以在计算机上执行。每个原语都有自己的语法和语义,语法指的是原语的符号表示,语义是指该原语的含义。伪代码:用户开发过程中非正式表达想法的符号系统。

输入知识,消化知识,输出知识,分享知识,教人让我学习更好,业精于勤荒于嬉,行成于思毁于随 1036

group by和select的使用

GROUP BY的用法 1、group by概述: 简单来说:将数据库的数据用’by’后面接的规则进行分组,即将一个大数据库分成一个个相同类型数据在一起的小区域。 2、group by的语法: SELECT column_name, function(column_name) //此处的function()函数是指SQL中的一些聚合函数,例如:MAX(),MIN(),SUM(),AVG(),COUNT()等等 FROM table_name WHERE column_name operator value

weixin_42221136的博客 9653

管道机器人手臂机械结构设计cad【8张】+三维图+设计说明书+绛重

履带式管道机器人适用于各种管道环境,包括直管道、弯曲管道、水平管道、垂直管道等,其灵活性和适应性使得它可以应对不同形状和尺寸的管道,完成全面的检测和维护工作。管道机器人研究具有重要的现实意义和深远的社会影响,通过提高工作效率、降低人员风险、提升服务质量、节约成本资源和促进科技创新等方面的作用,为现代工程技术领域的发展和进步做出了积极的贡献。管道机器人是一种能够在管道内部执行各种任务的智能机器人,而管道机器人的机械臂对于管道机器人在管道内执行任务的灵活性、稳定性和效率至关重要。

kejigongjiang的博客 943

.Net程序员学用Oracle系列(21):分组查询(GROUP BY)

1、GROUP BY 标准分组 1.1、GROUP BY 概述 1.2、WHERE 和 HAVING 的区别? 2、GROUP BY 扩展分组 2.1、ROLLUP 分组 2.2、CUBE 分组 2.3、GROUPING SETS 分组 2.4、复杂分组(组合列分组、重复列分组、连接分组) 3、GROUP BY 扩展函数 3.1、GROUPING 函数 3.2、GROUPING_ID ...

weixin_30378623的博客 217

关于瑞芯微SDK中buildroot的架构分析、配置细节、以及一些使用步骤

摘要:瑞芯微SDK基于Buildroot框架,针对RK3568等芯片提供定制化开发环境。核心目录包括buildroot(配置与编译框架)、kernel(定制内核)和u-boot(引导程序)。开发流程为:1)加载芯片默认配置;2)通过menuconfig定制系统(架构、内核、软件包等);3)可选修改内核配置。关键硬件适配需修改设备树(dts)和分区表(parameter.txt),系统行为通过启动脚本(S90network)调整。最终执行make编译生成可烧录固件。该框架通过配置文件驱动,实现从工具链构建到固

Hyjks的博客 1199

【AFAC2026金融智能-赛题四】我做了一个疯狂的决定,把Embedding和Reranker全删了

本文介绍了AFAC2026金融智能挑战赛赛道四的解题思路,核心是在500万token的严格限制下实现金融长文本的高效问答。作者通过四步流水线(规划、BM25检索、记忆压缩、LLM推理)优化流程,重点创新在于: 采用零API调用的纯BM25检索,配合多路查询、封面页加权和页面邻接扩展等策略 设计高效的检索算法,从问题中提取专有名词并构建多路查询组合 深入理解评分公式,平衡准确率和token消耗,最终在准确率提升的同时将token消耗从数百万降至百万级 这些创新使方案在严格限制下实现了性能突破,展示了在资源受限

224

详解GROUP BY 如何与 SELECT 语句进行交互?

SELECT 列表: 矢量聚合。如果 SELECT 列表中包含聚合函数,则 GROUP BY 将计算每组的汇总值。这些函数称为矢量聚合。 Distinct 聚合。ROLLUP、CUBE 和 GROUPING SETS 支持聚合 AVG (DISTINCT column_name)、COUNT (DISTINCT column_name) 和 SUM (DISTINCT column_name) ...

1426

【2025年华为秋招(AI)-11月19日-第一题(100分)- 选择题】(题目+思路+Java&C++&Python解析+在线测试)

本文摘要: 本文包含15道单选题和5道多选题,涵盖机器学习、深度学习、概率统计和数值计算等多个领域。单选题涉及Transformer的Softmax层作用、最小二乘法拟合、概率密度计算、注意力机制、反向传播问题、ROC曲线用途、截断误差来源等知识点。多选题考察大模型训练技术、BERT/GPT比较、强化学习对齐方法、CNN常见层以及PCA特性等内容。题目设计注重理论与实践结合,既包含数学推导,又关注前沿技术应用,全面检验读者对机器学习核心概念的理解能力。正确答案均附有详细解析,帮助理解相关技术原理。

m0_73659489的博客 145

.NET 3.5(5) - LINQ查询操作符之Select、Where、OrderBy、OrderByDescending

http://webabcd.blog.51cto.com/1787395/344995 [索引页][源码下载] 步步为营VS 2008 + .NET 3.5(5) - LINQ查询操作符之Select、Where、OrderBy、OrderByDescending、GroupBy、Join、GroupJoin及其对应的查询语法 作者:webabcd介绍    ·Select - Se...

weixin_34162228的博客 324

霍尼韦尔SoftMaster使用说明

霍尼韦尔SoftMaster使用说明

Outlook Express 6 (OE6) for Win7/Win8/Win10

英文版 Outlook Express6.0, 兼容Win7/Win10/WinXP,解压就可用。

步步为营VS 2008 + .NET 3.5(5) - LINQ查询操作符之Select、Where、OrderBy、OrderByDescending...

[索引页][源码下载]步步为营VS 2008 + .NET 3.5(5) - LINQ查询操作符之Select、Where、OrderBy、OrderByDescending、GroupBy、Join、GroupJoin及其对应的查询语法 作者:webabcd介绍 ·Select -Select选择;延迟 ·Where -Where查询;...

weixin_34406796的博客 182

SIMATIC S7-1200, S7-1500 PID 控制[手册]

SIMATIC S7-1200, S7-1500 PID 控制[手册]

5、步步为营VS 2008 + .NET 3.5(5) - LINQ查询操作符之Select、Where、OrderBy、OrderByDescending、GroupBy、Join、GroupJoi...

[索引页] [源码下载] 步步为营VS 2008 + .NET 3.5(5) - LINQ查询操作符之Select、Where、OrderBy、OrderByDescending、GroupBy、Join、GroupJoin及其对应的查询语法 作者:webabcd 介绍 ·Select - Select选择;延迟 ·Where - Where查询...

weixin_30547797的博客 99

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

Linq中GroupBy方法的使用总结

Group在SQL经常使用,通常是对一个字段或者多个字段分组,求其总和,均值等。 Linq中的Groupby方法也有这种功能。具体实现看代码: 假设有如下的一个数据集: public class StudentScore     {         public int ID { set; get; }         public string Name { set; get; }    ...

weixin_34324081的博客 595

.net 拉姆达 groupby(p => p.X) order by count(c.Count())

//国家 var entityCountriesList = aliexpressEntities.SYS_CourierCode.Where(whereSelect.Compile()).GroupBy(p => p.ToCountries).OrderByDescending(c => c.Count()).Select(c => c.Key...

weixin_30546933的博客 241

asp.net LinQ中GroupBy的用法

之前同事问了我一个问题,一张表里有

luanjun123456的专栏 1904

【转】Linq Group by

http://www.cnblogs.com/death029/archive/2011/07/23/2114877.html 1.简单形式: varq= fromp in db.Products group p by p.CategoryID into g select g; 语句描述:Linq使用Group By按CategoryID划分产品。 说明:from p ...

weixin_30502157的博客 469

.NET Core EF Core(Entity Framework) 实现分组查询(group by)

本文主要介绍在.NET Core中使用EF Core实现分组查询(group by)的方法。

weixin_52026996的博客 2379

C#——Linq的使用Where、GroupBy、Select

List<Model>.Where(c => c.Djzt == 4 && c.Zfbz == 0) .GroupBy(c => new { c.Cjsj_Date, c.Flmc}) .Select( ...

u010622242的博客 4822

【.NET/.NET Core】实现SQL GroupBy 功能

【.NET/.NET Core】实现SQL GRPUP BY功能

MoFe1的博客 322
上一篇: 步步为营VS 2008 + .NET 3.5(4) - C# 3.0新特性之LambdaExpressions(Lambda表达式)、QuerySyntax(查询语法)和AnonymousTypes(匿名类型)
下一篇: 步步为营VS 2008 + .NET 3.5(6) - LINQ查询操作符之Distinct、Union、Concat、Intersect、Except、Skip、Take、SkipWhile、TakeWhile、Single、SingleOrDefaul
webabcd
博客等级 码龄17年 28粉丝 911原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值