服务器之家:专注于VPS、云服务器配置技术及软件下载分享
分类导航

PHP教程|ASP.NET教程|Java教程|ASP教程|编程技术|正则表达式|C/C++|IOS|C#|Swift|Android|VB|R语言|JavaScript|易语言|vb.net|

服务器之家 - 编程语言 - C# - C# DataTable.Select()根据条件筛选数据问题

C# DataTable.Select()根据条件筛选数据问题

2023-03-01 15:10LcVong C#

这篇文章主要介绍了C# DataTable.Select()根据条件筛选数据问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

DataTable.Select()根据条件筛选数据

很多时候我们获取到一个表的时候需要根据表的包含的队列去筛选内容,一般来说可能想到的就是遍历整个表的内容进行条件筛选,但是这种方式增加了代码量且易出错,DataTable.Select()就可以解决这一问题。

DataTable.Select()重载

**Select();**获取所有 System.Data.DataRow 对象的数组;

**Select(string filterExpression);**按照主键顺序(如果没有主键,则按照添加顺序)获取与筛选条件相匹配的所有 System.Data.DataRow 对象的数组;

**Select(string filterExpression, string sort);**获取按照指定的排序顺序且与筛选条件相匹配的所有System.Data.DataRow 对象的数组;

**Select(string filterExpression,string sort, DataViewRowState record States);**获取与排序顺序中的筛选器以及指定的状态相匹配的所有。

举例

?
1
2
3
4
5
Select("Results = 'PASS' ");//筛选字段‘Results '为‘PASS'的所有数据
Select("Time>= 100 ");//筛选字段‘Time'大于等于100的所有数据
Select("Results = 'PASS' and Time>= 100 ");//筛选字段‘Results '为‘PASS'且字段‘Time'大于等于100的所有数据
Select("Results = 'PASS' or Time>= 100 ");//筛选字段‘Results '为‘PASS'或者字段‘Time'大于等于100的所有数据
Select("Results  like '%NG_%' ");//筛选字段‘Results '字段中包含'NG_'字符串的所有数据

DataTable常用数据筛选方法

Computer

按条件筛选数据并对数据进行统计运算

?
1
dtData.Compute("Avg(身高)", "年龄 > 22 AND 姓名 LIKE '李%'");

Select

根据条件查询一行或多行数据

?
1
DataRow[] drs = dtData.Select("姓名 is NULL");

Find

根据DataTable的主键查找1行数据,只能查找主键字段

如果主键是多个字段,需要借助Object[]数组进行拼接

主键只有一个字段

?
1
DataRow dr = this.dt.Rows.Find("14109");

主键有多个字段

?
1
2
Object[] obj= new Object[]{268,"2001-7-1"};
DataRow dr = dt.Rows.Find(obj);

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/LcVong/article/details/124481510

延伸 · 阅读

精彩推荐
  • C#说说C#的async和await的具体用法

    说说C#的async和await的具体用法

    本篇文章主要介绍了说说C#的async和await的具体用法,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧...

    tianmuxia7522022-01-21
  • C#微信公众号被动消息回复原理解析

    微信公众号被动消息回复原理解析

    这篇文章主要介绍了公众号被动消息回复原理解析,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下...

    佳序10912022-07-28
  • C#C#的泛型方法解析

    C#的泛型方法解析

    本文讲解了C#2.0引入的泛型知识,主要包含泛型类、泛型接口、泛型委托,并且重点讲解了泛型方法,已经泛型的约束分类。最后给了一些利用泛型方法操...

    彭泽090210322021-12-13
  • C#C#程序中session的基本设置示例及清除session的方法

    C#程序中session的基本设置示例及清除session的方法

    这篇文章主要介绍了C#程序中session的基本设置示例及清除session的方法,是C#入门学习中的基础知识,需要的朋友可以参考下...

    sunzhenlin200810602021-11-17
  • C#C#实现获取mp3 Tag信息的方法

    C#实现获取mp3 Tag信息的方法

    这篇文章主要介绍了C#实现获取mp3 Tag信息的方法,涉及C#针对MP3文件属性的相关操作技巧,需要的朋友可以参考下...

    a77194852412132022-01-12
  • C#C#加密知识整合 (AES,MD5,RSA,SHA256)

    C#加密知识整合 (AES,MD5,RSA,SHA256)

    这篇文章主要介绍了c#对于加密的一点整合 (AES,MD5,RSA,SHA256),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参...

    高12344552022-12-20
  • C#C#中使用XmlDocument类来创建和修改XML格式的数据文件

    C#中使用XmlDocument类来创建和修改XML格式的数据文件

    这篇文章主要介绍了C#中使用XmlDocument类来创建和修改XML格式的数据文件的方法,XmlDocument类被包含在.NET框架中,需要的朋友可以参考下...

    hzy37746202021-11-18
  • C#C#利用原图和水印图的重叠简单实现水印的方法

    C#利用原图和水印图的重叠简单实现水印的方法

    这篇文章主要介绍了C#利用原图和水印图的重叠简单实现水印的方法,实例演示了完整的水印操作类实现方法,需要的朋友可以参考下...

    且行且思6282021-11-18