• 如何取出DataTable中某几个字段(列名)组合新表


    在偶不知道第二种方法之前.偶费了好大劲才把这个问题解决.下面把这两个方法都帖出来,请大家批评指正.或有更好的办法也帖出来,一起交流

    第一种方法:
                string sql = "Report_proc";
                SqlParameter[] paras ={ new SqlParameter("@deptno", "") };
                DataTable dt = Utils.SQLHelper.ExecuteProForDataTable(sql, paras);
                DataTable dtc = new DataTable(); //新new的一个表,用来存放我们想要的字段(列)

                for (int i = 0; i < dt.Columns.Count; i++)
                {
                    if (dt.Columns.ColumnName.IndexOf("renshu") == 0)
                    {
                        DataColumn dc = new DataColumn(dt.Columns.ColumnName, typeof(string));
                        dtc.Columns.Add(dc);
                    }
                }
                for (int j = 0; j < dt.Rows.Count; j++)
                {
                    DataRow row = dtc.NewRow();
                    int m = 0;
                    for (int l = 0; l < dt.Columns.Count; l++)
                    {

                        if (dt.Columns[l].ColumnName.IndexOf("renshu") == 0) //我要指取的字段都有一个特征里面都含有renshu这个串
                        {
                            if (m < 5) //限制下限,以免超出列的总数,防止出现异常
                            {
                                row[m] = (dt.Rows[j][l].ToString() == "" ? 0 : Convert.ToInt32(dt.Rows[j][l].ToString()));
                                m = m + 1;
                            }
                        }

                    }
                    dtc.Rows.Add(row);//增加一行
                }

    第二种方法:

    DataTable newTable = MyDataTable.DefaultView.ToTable(false, new string[] { "ColumnName1", "ColumnName1", "ColumnName1" });

    这里我们使用的ToTable方法,相比第一种方法而言,好处大家一看就知道了

  • 相关阅读:
    Unity接入九游SDK学习与踩坑
    Linux系统下实现Tomcat的安装和项目的部署:
    mac查看端口占用情况并结束进程
    BootStrap
    ES6
    JQuery
    CSS 、JavaScript
    HTML
    XML
    数据库连接池&DBUtils
  • 原文地址:https://www.cnblogs.com/Mindy-hym/p/4521964.html
Copyright © 2020-2023  润新知