Datatable数据分组
datatable里面的数据是按照这个顺序排列的
姓名 性别 年龄
a1 男 12
a1 女 11
a2 男 12
现在要得到这种排序方式,按照某一类型的数据显示放在一起
姓名 性别 年龄
a1 男 12
a2 男 12
a1 女 11
实现
DataTable dt = new DataTable();
dt.Columns.Add("姓名");
dt.Columns.Add("性别");
dt.Columns.Add("年龄");
DataTable dt1 = new DataTable();
dt1.Columns.Add("姓名");
dt1.Columns.Add("性别");
dt1.Columns.Add("年龄");
dt.Rows.Add("a1", "男", "");
dt.Rows.Add("a1", "女", "");
dt.Rows.Add("a2", "男", "");
IEnumerable<IGrouping<string, DataRow>> result = dt.Rows.Cast<DataRow>().GroupBy<DataRow, string>(dr => dr["性别"].ToString());//按性别分组
foreach (IGrouping<string, DataRow> ig in result)
{
foreach (var dr in ig)
{
dt1.Rows.Add(dr["姓名"].ToString(), dr["性别"].ToString(), dr["年龄"].ToString());
}
}
Datatable数据分组的更多相关文章
- 如何使用linq操作datatable进行分组
使用微软.net的孩子们应该都知道linq吧,要知道linq可是其他高级语言没有的技术,比如php,java等等,但是起初我对linq的认识只是停留在对 list<> 的泛型集合进行操作, ...
- excel to datatable (c#用NPOI将excel文件内容读取到datatable数据表中)
将excel文件内容读取到datatable数据表中,支持97-2003和2007两种版本的excel 1.第一种是根据excel文件路径读取excel并返回datatable /// <sum ...
- DataTable数据批量写入数据库三种方法比较
DataTable数据批量写入数据库三种方法比较 标签: it 分类: C#1) insert循环插入:2) sqldataadapter.update(dataset,tablename); ...
- .NET LINQ 数据分组
数据分组 分组指将数据放入组中以便每个组中的元素共享公共特性的操作. 方法 方法名 说明 C# 查询表达式语法 Visual Basic 查询表达式语法 更多信息 GroupBy 对共享 ...
- c# applibrary实现一个Sheet表中存放多张DataTable数据
1.工具类(applibrary.dll) public class ExcelHelper { /// <summary> /// 文件名 /// </summary> pu ...
- MySQL:基础—数据分组
MySQL:基础-数据分组 1.为什么要分组: 比如一个表中有多条订单记录,如上图,每条记录对应着一个商品,现在我要查询 每个商品被订购的单数 准备出货?也就是找到每个商品被订购的数量. 如果只找一个 ...
- 【转】将datatable数据转化成list
#region 将datatable数据转化成list public static List<T> ToList<T>(this DataTable dt) where T ...
- EMVTag系列1《数据分组》
数据分组的设计在个人化过程中承担着重要的作用.数据分组标识符(DGI)是两字节十六进制数.数据分组标识的第一个字节等于'01'到'1E',表明数据存储的SFI.第二个字节表明SFI记录的记录编号.其他 ...
- DataTable数据与Excel表格的相互转换
using Excel = Microsoft.Office.Interop.Excel; private static Excel.Application m_xlApp = null; /// & ...
随机推荐
- POJ2777(线段树裸题)
题目:http://poj.org/problem?id=2777 别忘了各地的return: 有可能输入的L<R,手动swap: 似乎是多组输入? pushup和pushdown的位置. (原 ...
- POJ3208魔鬼数
题目:http://poj.org/problem?id=3208 与一般的数位dp有点不同的是,没有给出上界,而是要通过值来判断这一位该填什么. 当然是从高位向低位填. 为了知道这一位填下去对答案有 ...
- vue-router 结合源码分析原理
路由响应过程: 浏览器发出请求 服务器监听到num端口(或443)有请求过来,并解析url路径 根据服务器的路由配置,返回相应信息(可以是 html 字串,也可以是 json 数据,图片等) 浏览器根 ...
- R(8): tidyr
tidy(整洁),Tidyr包是由Hadely Wickham创建,这个包提高了整理原始数据的效率,tidyr包的4个常用的函数及其用途如下: gather()——它把多列放在一起,然后转化为key: ...
- Windows OS系统变量
%userprofile% C:\Users\Administrator\ %windir% C:\Windows\
- Linux下解压缩命令
1. tar格式 解包:[*******]$ tar xvf FileName.tar 打包[---]:[*******]$ tar cvf FileName.tar DirName(注:tar是打包 ...
- 企业微信jssdk分享接口管理系统
服务项目 新手技术咨询 企业技术咨询 定制开发 服务说明 QQ有问必答 QQ.微信.电话 微信开发.php开发,网站开发,系统定制,小程序开发 价格说明 200元/月 1000/月 商议 ...
- 【转】深入理解java异常处理机制
深入理解java异常处理机制 ; int c; for (int i = 2; i >= -2; i--) { c = b / i; System.out.println("i=&qu ...
- 【Hibernate学习笔记-5】@Formula注解的使用
ORM映射关系:注解方式 package org.crazyit.app.domain; import javax.persistence.*; import org.hibernate.annota ...
- 显式等待大结局___封装成API方便控制层调用
控制层 测试用例层: 控制层示例代码: #coding=utf-8from selenium.webdriver.common.by import Byfrom selenium.webdriver. ...