DataTable数据类型的一些操作 增加行、插入行、修改数据、修改列名、修改列顺序、计算、选取或删除行(列)、排序、某列distinct值 等
生活随笔
收集整理的這篇文章主要介紹了
DataTable数据类型的一些操作 增加行、插入行、修改数据、修改列名、修改列顺序、计算、选取或删除行(列)、排序、某列distinct值 等
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
Datatable 這個數(shù)據(jù)類型在C#中涉及到對數(shù)據(jù)庫讀取時的用處還是挺大的,最近在處理一個報表開發(fā)時,一開始把所有的操作都放在sql 上面來做,就是我需要什么樣的數(shù)據(jù)我就query出什么,但是這樣其實是很不方便的,后來發(fā)現(xiàn)Datatable的功能其實是很強大的,能夠?qū)?shù)據(jù)進行一些處理,因此將所遇到的記錄下來。
1.增加行、插入行
DataTable dtEnterprise = new DataTable();
DataRow dr = dtEnterprise.NewRow();
dr["CATEGORY"] = "合計";
dr["MAIN"] = "";
dtEnterprise.Rows.Add(dr);//加在最后一行
dtEnterprise.Rows.InsertAt(dr, i);//加在第i行
2.修改數(shù)據(jù)
DataTable dtEnterprise = new DataTable();
DataRow replace = dtEnterprise.Rows[i];
replace.BeginEdit();
replace["CATEGORY"] = "";
replace["MAIN"] = "";
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();
dtEnterprise.Columns["MAIN"].SetOrdinal();
5.計算(簡單的記錄下遇到的求和其余后續(xù)再了解)
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方法后續(xù)補充)
DataTable dtEnterprise = new DataTable();
dtEnterprise.Rows.RemoveAt(i);
7.選取行()
DataTable dtEnterprise = new DataTable();
DataView davTemp = new DataView(dtEnterprise, "過濾條件", "排序字段", DataViewRowState.狀態(tài));
//把過濾后的表賦給新表
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");
總結(jié)
以上是生活随笔為你收集整理的DataTable数据类型的一些操作 增加行、插入行、修改数据、修改列名、修改列顺序、计算、选取或删除行(列)、排序、某列distinct值 等的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: vi/vim使用进阶: 在VIM中使用G
- 下一篇: spark和MR比较