返回顶部
首页 > 资讯 > 后端开发 > 其他教程 >C#DataTable.Select()根据条件筛选数据问题
  • 186
分享到

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

C#DataTable.Select()C#根据条件筛选数据C#DataTable 2023-01-28 06:01:20 186人浏览 独家记忆
摘要

目录DataTable.Select()根据条件筛选数据DataTable.Select()重载举例DataTable常用数据筛选方法ComputerSelectFind总结Data

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);**获取与排序顺序中的筛选器以及指定的状态相匹配的所有。

举例

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

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

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

Select

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

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

Find

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

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

主键只有一个字段

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

主键有多个字段

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

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。

--结束END--

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

本文链接: https://lsjlt.com/news/178245.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作