C# DataTable.Select()根據(jù)條件篩選數(shù)據(jù)問(wèn)題
DataTable.Select()根據(jù)條件篩選數(shù)據(jù)
很多時(shí)候我們獲取到一個(gè)表的時(shí)候需要根據(jù)表的包含的隊(duì)列去篩選內(nèi)容,一般來(lái)說(shuō)可能想到的就是遍歷整個(gè)表的內(nèi)容進(jìn)行條件篩選,但是這種方式增加了代碼量且易出錯(cuò),DataTable.Select()就可以解決這一問(wèn)題。
DataTable.Select()重載
**Select();**獲取所有 System.Data.DataRow 對(duì)象的數(shù)組;
**Select(string filterExpression);**按照主鍵順序(如果沒(méi)有主鍵,則按照添加順序)獲取與篩選條件相匹配的所有 System.Data.DataRow 對(duì)象的數(shù)組;
**Select(string filterExpression, string sort);**獲取按照指定的排序順序且與篩選條件相匹配的所有System.Data.DataRow 對(duì)象的數(shù)組;
**Select(string filterExpression,string sort, DataViewRowState record States);**獲取與排序順序中的篩選器以及指定的狀態(tài)相匹配的所有。
舉例
Select("Results = 'PASS' ");//篩選字段‘Results '為‘PASS'的所有數(shù)據(jù) Select("Time>= 100 ");//篩選字段‘Time'大于等于100的所有數(shù)據(jù) Select("Results = 'PASS' and Time>= 100 ");//篩選字段‘Results '為‘PASS'且字段‘Time'大于等于100的所有數(shù)據(jù) Select("Results = 'PASS' or Time>= 100 ");//篩選字段‘Results '為‘PASS'或者字段‘Time'大于等于100的所有數(shù)據(jù) Select("Results like '%NG_%' ");//篩選字段‘Results '字段中包含'NG_'字符串的所有數(shù)據(jù)
DataTable常用數(shù)據(jù)篩選方法
Computer
按條件篩選數(shù)據(jù)并對(duì)數(shù)據(jù)進(jìn)行統(tǒng)計(jì)運(yùn)算
dtData.Compute("Avg(身高)", "年齡 > 22 AND 姓名 LIKE '李%'");
Select
根據(jù)條件查詢一行或多行數(shù)據(jù)
DataRow[] drs = dtData.Select("姓名 is NULL");
Find
根據(jù)DataTable的主鍵查找1行數(shù)據(jù),只能查找主鍵字段
如果主鍵是多個(gè)字段,需要借助Object[]數(shù)組進(jìn)行拼接
主鍵只有一個(gè)字段
DataRow dr = this.dt.Rows.Find("14109");
主鍵有多個(gè)字段
Object[] obj= new Object[]{268,"2001-7-1"}; DataRow dr = dt.Rows.Find(obj);
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
C#?Unity使用正則表達(dá)式去除部分富文本的代碼示例
正則表達(dá)式在我們?nèi)粘i_(kāi)發(fā)中的用處不用多說(shuō)了吧,下面這篇文章主要給大家介紹了關(guān)于C#?Unity使用正則表達(dá)式去除部分富文本的相關(guān)資料,文中通過(guò)實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-03-03C#給picturebox控件加圖片選中狀態(tài)的2個(gè)方法
C#給picturebox控件加圖片選中狀態(tài)的2個(gè)方法,需要的朋友可以參考一下2013-03-03c#實(shí)現(xiàn)識(shí)別圖片上的驗(yàn)證碼數(shù)字
這篇文章主要介紹了c#實(shí)現(xiàn)識(shí)別圖片上的驗(yàn)證碼數(shù)字的方法,本文給大家匯總了2種方法,有需要的小伙伴可以參考下。2015-11-11C#比較二個(gè)數(shù)組并找出相同或不同元素的方法
這篇文章主要介紹了C#比較二個(gè)數(shù)組并找出相同或不同元素的方法,涉及C#針對(duì)數(shù)組的交集、補(bǔ)集等集合操作相關(guān)技巧,非常簡(jiǎn)單實(shí)用,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-11-11

深入分析C#鍵盤勾子(Hook),屏蔽鍵盤活動(dòng)的詳解

unity自帶尋路(導(dǎo)航)系統(tǒng) Nav Mesh導(dǎo)航網(wǎng)格