zoukankan      html  css  js  c++  java
  • DataTable数据类型的一些操作 增加行、插入行、修改数据、修改列名、修改列顺序、计算、选取或删除行(列)、排序、某列distinct值 等

    Datatable 这个数据类型在C#中涉及到对数据库读取时的用处还是挺大的,最近在处理一个报表开发时,一开始把所有的操作都放在sql 上面来做,就是我需要什么样的数据我就query出什么,但是这样其实是很不方便的,后来发现Datatable的功能其实是很强大的,能够对数据进行一些处理,因此将所遇到的记录下来。

    1.增加行、插入行

                DataTable dtEnterprise = new DataTable();
                DataRow dr = dtEnterprise.NewRow();
                dr["CATEGORY"] = "合计";
                dr["MAIN"] = "1";
                dtEnterprise.Rows.Add(dr);//加在最后一行
                dtEnterprise.Rows.InsertAt(dr, i);//加在第i行

    2.修改数据

            DataTable dtEnterprise = new DataTable();
                DataRow replace = dtEnterprise.Rows[i];
                replace.BeginEdit();
                replace["CATEGORY"] = "2018";
                replace["MAIN"] = "2";
                replace.EndEdit();

    3.修改列名

            DataTable dtEnterprise = new DataTable();
                dtEnterprise.Columns["CATEGORY"].ColumnName = "分类";
                dtEnterprise.Columns["MAIN"].ColumnName = "主要";
                //取列名
                string name=dtEnterprise.Columns[i].ColumnName;

    4.修改列顺序

            DataTable dtEnterprise = new DataTable();
                dtEnterprise.Columns["CATERGORY"].SetOrdinal(1);
                dtEnterprise.Columns["MAIN"].SetOrdinal(0);

    5.计算(简单的记录下遇到的求和其余后续再了解)

                DataTable dtEnterprise = new DataTable();
                int Sum_count = int.Parse(dtEnterprise.Compute("sum(count)", "true").ToString());
                int Sum_death = int.Parse(dtEnterprise.Compute("sum(death)", "true").ToString());

    6.删除行(似乎还有delete方法后续补充)

                DataTable dtEnterprise = new DataTable();
                dtEnterprise.Rows.RemoveAt(i);

    7.选取行()

                DataTable dtEnterprise = new DataTable();
    
                DataView davTemp = new DataView(dtEnterprise, "过滤条件", "排序字段", DataViewRowState.状态);
                //把过滤后的表赋给新表
                DataTable datNew = davTemp.ToTable();

    8.选取列()

                DataTable dtEnterprise = new DataTable();
    
                DataTable datNew = dtEnterprise.DefaultView.ToTable(false, new string[] { "列名", "列名"});

     9.排序()

    https://blog.csdn.net/zhensoft163/article/details/5692572

    10.某列distinct值

                    DataView dtv = dt_com.DefaultView;
                    var group_1 = dtv.ToTable(true, "name");       
    MrNou
  • 相关阅读:
    简单分析实现运维利器---web远程ssh终端录像回放libl
    利用kite对视频流应用进行压力测试
    Springboot 启动扩展
    SpringBoot 自动配置原理
    idea springboot没有启动项,或启动时找不到或无法加载主类
    Elasticsearch、Kibana、elasticsearch-analysis-ik 版本下载地址
    Springboot 操作Elasticsearch 方式二 【rest-high-level-client】
    Elasticsearch 安装x-pack之后,无法连接head问题
    ES版本是向下兼容的,springboot连接ES,可以用低版本客户端
    ES安装elasticsearch-head-master插件
  • 原文地址:https://www.cnblogs.com/yangsirc/p/8624407.html
Copyright © 2011-2022 走看看