1、两个相同字段表的合并:

 public static DataSet CombineTables(DataSet _ds, DataTable _dt1, DataTable _dt2)
{
DataSet ds = _ds.Clone();
//ds.Tables[0].Clone();
ds.Tables[].Rows.Clear();
int i = ;
for ( i = ; i < _dt1.Rows.Count; i++)
{
ds.Tables[].ImportRow(_dt1.Rows[i]);
}
for (int j = ; j < _dt2.Rows.Count; j++)
{
ds.Tables[].ImportRow(_dt2.Rows[j]);
}
return ds;
}

2、对表的数据截取:

 public static DataSet CopyScopeRows(DataSet source, int startRowNum, int endRowNum) {
DataSet des = source.Clone();
des.Tables[].Rows.Clear();
for (int i = startRowNum; i < source.Tables[].Rows.Count && i <= endRowNum; i++) {
des.Tables[].ImportRow(source.Tables[].Rows[i]);
}
return des;
}

3、数据行的筛选:

 public static DataSet CopyScopeRows(DataSet source, string filter) {
DataSet des = source.Clone();
DataSet _ds = null;
des.Tables[].Rows.Clear();
try
{
DataRow[] rows = source.Tables[].Select(filter);
foreach (DataRow row in rows) {
des.Tables[].ImportRow(row);
}}
catch (Exception ex) { return _ds; }
finally
{}
return des;
}

4、数据行的筛选,并可以排序:

 public static DataSet CopyScopeRows(DataSet source, string filter, string order) {
DataSet des = source.Clone();
des.Tables[].Rows.Clear();
DataRow[] rows = source.Tables[].Select(filter, order);
foreach (DataRow row in rows)
{
des.Tables[].ImportRow(row);
}
return des;
}

5、数据行的筛选,并可截取数据行:

 public static DataSet CopyScopeRows(DataSet source, string filter, int startRowNum, int endRowNum) {
DataSet des = source.Clone();
des.Tables[].Rows.Clear();
DataRow[] rows = source.Tables[].Select(filter);
for (int i = startRowNum; i < rows.Length && i <= endRowNum; i++)
{
des.Tables[].ImportRow(rows[i]);
}
return des;
}

6、数据行的筛选、排序,并可截取数据行:

 public static DataSet CopyScopeRows(DataSet source, string filter, string order, int startRowNum, int endRowNum) {
DataSet des = source.Clone();
des.Tables[].Rows.Clear();
DataRow[] rows = source.Tables[].Select(filter, order);
for (int i = startRowNum; i < rows.Length && i <= endRowNum; i++) {
des.Tables[].ImportRow(rows[i]);
}
return des;
}
 public static object GetValueByKey(DataTable table, string keyName, object keyValue, string returnName) {
object obj = null;
table.PrimaryKey = new DataColumn[] { table.Columns[keyName] };
DataRow row = table.Rows.Find(keyValue);
if (row != null) { obj = row[returnName]; }
return obj;
}
 public static object GetValueByKeys(DataTable table,  object[] keyValue, string returnName)
{
object obj = null; DataColumn[] keys = new DataColumn[];
keys[] = table.Columns[];
keys[] = table.Columns[];
table.PrimaryKey = keys; DataRow row = table.Rows.Find(keyValue);
if (row != null) { obj = row[returnName]; }
return obj;
}

ASP.NET中Dataset的table数据合并、数据截取、数据排序的更多相关文章

  1. ASP.Net中关于WebAPI与Ajax进行跨域数据交互时Cookies数据的传递

    本文主要介绍了ASP.Net WebAPI与Ajax进行跨域数据交互时Cookies数据传递的相关知识.具有很好的参考价值.下面跟着小编一起来看下吧 前言 最近公司项目进行架构调整,由原来的三层架构改 ...

  2. ASP.NET中Service接受前端单个及多个数据的写法

    MVC中的Service主要是用来处理数据交互的. 前端页面传递一个或者多个参数到Service的写法: 一个参数写法: public DataTable 方法名 (Pagination pagina ...

  3. R语言数据合并使用merge数据追加使用rbind和cbind

    R语言中的横向数据合并merge及纵向数据合并rbind的使用 我们经常会遇到两个数据框拥有相同的时间或观测值,但这些列却不尽相同.处理的办法就是使用merge(x, y ,by.x = ,by.y ...

  4. SQLServer 中多行数据合并成一行数据(一个字段)

    需求:有四行数据,如下: 1.苹果 2.橘子 3.桃子 4.波罗 合并成一个字段:苹果,橘子,桃子,波罗: 需求明确之后,先弄点测试数据,上代码: --创建一个临时表 Create table #te ...

  5. sqlserver中 多条数据合并成一条数据 (stuff 与 for xml path 连用)

    SQL 列转行,即多行合并成一条   需求:按照分组,将多条记录内容合并成一条,效果如下: 数据库示例: CREATE TABLE [t2]([NID] [bigint] NULL,[district ...

  6. react中使用antd Table组件滚动加载数据的实现

    废话不多说,直接上代码.一目了然. import React, { Component } from "react"; import { Table } from "an ...

  7. mysql中将多行数据合并成一行数据

    .1GROUP_CONCAT()中的值为你要合并的数据的字段名; SEPARATOR 函数是用来分隔这些要合并的数据的: ' '中是你要用哪个符号来分隔: 2.必须要用GROUP BY 语句来进行分组 ...

  8. Oracle查询多行数据合并成一行数据

    例如: select base_id, translate (ltrim (text1, '/'), '*/', '*,') xmmc,translate (ltrim (text2, '/'), ' ...

  9. 数据库groub by分组后,把多行数据合并成一行数据(Oracle、Postgres)

    关键字 row_number() over (partition by)   例如,下面的数据, 这是按照name分组后,展示property值. 我们想得到这样的值; 第一步:将每一组的proper ...

随机推荐

  1. JavaScript 函数递归

    递归函数 递归函数是在一个函数通过名字调用自身的情况下构成的 项目中例如树状结构渲染,对象深复制,等很多方面都会使用到递归函数 function factorial(num){ if (num < ...

  2. KNN和Kmeans聚类有什么不同?

    这两种算法之间的根本区别是,Kmeans本质上是无监督学习而KNN是监督学习.Kmeans是聚类算法,KNN是分类(或回归)算法. Kmeans算法把一个数据集分割成簇,使得形成的簇是同构的,每个簇里 ...

  3. Entity Framework查询

    Entity Framework是个好东西,虽然没有Hibernate功能强大,但使用更简便.今天整理一下常见SQL如何用EF来表达,Func形式和Linq形式都会列出来(本人更喜欢Func形式). ...

  4. 【原创】大数据基础之ElasticSearch(5)重要配置及调优

    Index Settings 重要索引配置 Index level settings can be set per-index. Settings may be: 1 static 静态索引配置 Th ...

  5. 关于Failed to start component [StandardEngine[Catalina].StandardHost[localhost].StandardContext[/springmvc-demo-01-start]]出错的解决方法

    出错的详情: 严重: A child container failed during start java.util.concurrent.ExecutionException: org.apache ...

  6. Zabbix导入数据库时报错

    导入mysql数据库时报错: ERROR 1046 (3D000) at line 1: No database selected 解决办法:1.备份原来的sql文件2. yum -y install ...

  7. postgre dinstinct on()的使用

    意思是DISTINCT ON ( expression [, …] )把记录根据[, …]的值进行分组,分组之后仅返回每一组的第一行. 需要注意的是,如果你不指定ORDER BY子句,返回的第一条的不 ...

  8. ~/Library/MobileDevice/Provisioning Profiles

    ~/Library/MobileDevice/Provisioning Profiles

  9. nginx在后端服务维护时,自动挂公告页

    本想用lua玩一把,但我发现我的要求很简单,直接用upstream的weight和backup就OK了. 于是,这样玩了一把. 作个记录. 1).down 表示当前的server暂时不参与负载2).w ...

  10. 必须了解的Object知识

    必须了解的Object知识 作为Java中所有类的根类,Object提供了很多基础的方法,我们经常会覆写它的方法,但很多时候因为不了解这些方法内在的含义以及与其他方法之间的关系而错误的覆写.下面介绍一 ...