c# DataTable select 过滤返回新DataTable

Select();

Select("id>=‘3‘ and name=‘3--hello‘");//支持and

Select("id>=‘3‘ or id=‘1‘");//支持or

Select("name like ‘%hello%‘");//支持like

Select("id>5","id desc");

Select("id>5", "id desc",DataViewRowState.Added)

DataRow[] dr = dt.Select(“col=‘XXXX‘”);//条件:就是字段名=‘某某‘

/// 执行DataTable中的查询返回新的DataTable

/// </summary>
        /// <param name="dt">源数据DataTable</param>
        /// <param name="condition">查询条件</param>
        /// <returns></returns>
        private DataTable GetNewDataTable(DataTable dt, string condition,string sortstr)
        {
            DataTable newdt = new DataTable();
            newdt = dt.Clone();
            DataRow[] dr = dt.Select(condition,sortstr);

    if (dr== null || dr.Length == 0)  return null
            for (int i = 0; i < dr.Length; i++)
            {
                newdt.ImportRow((DataRow)dr[i]);
            }
            return newdt;//返回的查询结果
        }
————————————————
版权声明:本文为CSDN博主「qq1429351723」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_30469045/article/details/52105132

原文地址:https://www.cnblogs.com/net-sky/p/12012626.html

时间: 2024-10-28 14:32:23

c# DataTable select 过滤返回新DataTable的相关文章

在DataTable中执行DataTable.Select(&quot;条件&quot;)返回DataTable;

1.在DataTable中执行DataTable.Select("条件")返回DataTable: // <summary> // 执行DataTable中的查询返回新的DataTable // </summary> // dt 是源数据DataTable // condition 是查询条件 DataTable newdt = new DataTable(); newdt = dt.Clone(); // 克隆dt 的结构,包括所有 dt 架构和约束,并无数据

C# DataTable中执行DataTable.Select(&quot;条件&quot;) &lt;转&gt;

1.在DataTable中执行DataTable.Select("条件")返回DataTable: // <summary> // 执行DataTable中的查询返回新的DataTable // </summary> // dt 是源数据DataTable // condition 是查询条件 DataTable newdt = new DataTable(); newdt = dt.Clone(); // 克隆dt 的结构,包括所有 dt 架构和约束,并无数据

在DataTable中执行DataTable.Select(&quot;条件&quot;),

1.在DataTable中执行DataTable.Select("条件")返回DataTable: // <summary> // 执行DataTable中的查询返回新的DataTable // </summary> // dt 是源数据DataTable // condition 是查询条件 DataTable newdt = new DataTable(); newdt = dt.Clone(); // 克隆dt 的结构,包括所有 dt 架构和约束,并无数据

项目中遇到的 linq datatable select

1如何使用DataTable.Select选出来的Rows生成新的DataTable?DataTable dt = 数据源;DataTable dtt = new DataTable();dtt=dt.Clone();//拷贝框架DataRow[] dr = dt.select("条件");for(int i=0;i<dr.length;i++){dtt.ImportRow((DataRow)dr[i]);}this.DataGrid.DataSource=dtt;this.Da

c# datatable按主键合并相同主键返回新的datatable

一.概述: 在python转c#时,python中pandas.merge可以按主键合并两个datatable,苦苦找了很久,希望c#也有同样的函数,未果,就自己写了一个,目前测试没问题,同样我也考虑了效率和简洁的问题. 二.原理:      (1)封装的函数如下:传入两个datatable和主键,返回一个datatable private DataTable unite_on_datatable(DataTable dt1,DataTable dt2,string key) (2)先将dt1和

DataSource绑定DataTable.Select()显示system.data.DataRow问题解决的方法

有时候我们须要在控件中绑定DataTable中设定条件过滤后的数据,此时,在winForm环境中,一些控件不能正确绑定并显示数据内容.这是由于DataTable.Select()返回的是DataRow[]类型的行数组.没有行列相关架构值.而控件如ListBox.comboBox等不能识别行数组中的列.读不到行列架构值,所以无法正常显示. 解决的方法是用DataView进行转换,即在DataView中对DataTable过滤数据. DataView构造函数例如以下: DataView ( Data

DataSource绑定DataTable.Select()显示system.data.DataRow问题解决办法

有时候我们需要在控件中绑定DataTable中设定条件过滤后的数据,此时,在winForm环境中,一些控件不能正确绑定并显示数据内容,这是因为DataTable.Select()返回的是DataRow[]类型的行数组,没有行列相关架构值.而控件如ListBox.comboBox等不能识别行数组中的列,读不到行列架构值,所以无法正常显示. 解决办法是用DataView进行转换,即在DataView中对DataTable过滤数据.DataView构造函数如下: DataView ( DataTabl

DataTable select根据条件取值

1.封装独立方法 // 执行DataTable中的查询返回新的DataTable /// </summary> /// <param name="dt">源数据DataTable</param> /// <param name="condition">查询条件</param> /// <returns></returns> private DataTable GetNewDataTa

DataTable中执行DataTable.Select(&quot;条件&quot;),

我们在使用Sql ******这些数据库时,可以轻松的通过Sum.Aver.Count等统计出相关结果,那么,在已经把数据检索出来的DataSet(DataTable)中呢?特别是通过Web Service获得了DataSet,这个时候,可是没有办法回头去修改Select语句来获取这些统计了.那么在DataSet/DataTable中是否可以进行统计呢?答案是肯定的.   在MSDN中,有一篇MS推荐的统计方法,就是逐行对数据进行求和统计,这个方法,其实有等于无(或许这个方法只是针对于DataG