C#中DataTable實(shí)現(xiàn)篩選查詢的示例
說(shuō)明:
DataTable進(jìn)行過(guò)濾篩選,常用的一些方法為:Select,dataview
1. 直接循環(huán)遍歷獲取
// 假設(shè)dt是由"SELECT C1,C2,C3 FROM T1"查詢出來(lái)的結(jié)果
DataTable dt = new DataTable();
for (int i = 0; i < dt.Rows.Count; i++)
{
if (dt.Rows[i]["C1"].ToString() == "abc")//查詢條件
{
//進(jìn)行操作
}
}
2. 使用LinQ
// DataTable.Select(條件[和Db的Sql篩選基本相似])
DataTable dt = new DataTable();
DataRow[] drArr = dt.Select(" C1='abc' ");?? ?//查詢
//DataTable.Select( "ID=" + id )
//多條件,如:DataTable.Select("ID=" + id +" and name=" +name)
// 模糊篩選
DataRow[] drArr = dt.Select("C1 LIKE 'abc%'");
// 另一種模糊查詢的方法?
DataRow[] drArr = dt.Select("'abc' LIKE C1 + '%'", "C2 DESC");
// 篩選后并排序
DataRow[] drArr = dt.Select("C1='abc'", "C2 DESC");
// DataRow如何轉(zhuǎn)為DataTable呢?
//?? ??? ?思路:DataRow賦值給新的DataTable
DataTable dtNew = dt.Clone(); ?
for (int i = 0; i < drArr.Length; i++) ?
{ ?
? ? dtNew.ImportRow(drArr[i]);?
}3. 利用DataView的RowFilter 實(shí)現(xiàn)篩選
DataTable dataSource = new DataTable();
DataView dv = dataSource.DefaultView;
dv.RowFilter = "columnA = 'abc'";
//1.過(guò)濾后直接獲取DataTable
DataTable newTable1 = dv.ToTable();
//2.設(shè)置新DataTable的TableName
DataTable newTable2 = dv.ToTable("NewTableName");
//3.設(shè)置新表是否過(guò)濾重復(fù)項(xiàng),擁有的列的列名以及出現(xiàn)的順序
//即可以設(shè)置新表的字段。但是字段名肯定是老表dataSource中擁有的。
DataTable newTable3 =
dv.ToTable(true, new string[] { "columnA,columnF,columnC" });
//4.綜合了2.3兩點(diǎn)。
DataTable newTable4 =
dv.ToTable("NewTableName", true, new string[] { "columnA,columnF,columnC" });
到此這篇關(guān)于C#中DataTable實(shí)現(xiàn)篩選查詢的示例的文章就介紹到這了,更多相關(guān)C# DataTable篩選查詢內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C#實(shí)現(xiàn)高性能文件批量處理器的示例代碼
文件批量處理器可以用于數(shù)字資產(chǎn)管理,數(shù)據(jù)遷移工程,日志文件處理和安全審計(jì)場(chǎng)景,本文將使用C#開發(fā)一個(gè)高性能文件批量處理器,希望對(duì)大家有所幫助2025-03-03
C#中圖片.BYTE[]和base64string的轉(zhuǎn)換方法
下面小編就為大家?guī)?lái)一篇C#中圖片.BYTE[]和base64string的轉(zhuǎn)換方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-02-02
WinForm項(xiàng)目開發(fā)中WebBrowser用法實(shí)例匯總
這篇文章主要介紹了WinForm項(xiàng)目開發(fā)中WebBrowser用法,需要的朋友可以參考下2014-08-08
C#調(diào)用Oracle存儲(chǔ)過(guò)程方法介紹(附源碼)
這篇文章介紹了C#調(diào)用Oracle存儲(chǔ)過(guò)程的方法,文中通過(guò)示例代碼介紹的非常詳細(xì)。對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2022-03-03
C#使用StringBuilder實(shí)現(xiàn)高效處理字符串
這篇文章主要為大家詳細(xì)介紹了C#如何使用StringBuilder實(shí)現(xiàn)高效處理字符串,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-01-01
通過(guò)?C#/VB.NET?代碼將?Excel?工作表拆分為單獨(dú)的文件
這篇文章主要介紹了通過(guò)C#/VB.NET代碼將Excel工作表拆分為單獨(dú)的文件,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,需要的小伙伴可以參考一下2022-09-09

