DataTable RowFilter 过滤数据
用Rowfilter加入过滤条件
eg:
string sql = "select Name,Age,Sex from UserInfo";
DataTable dt = DataAccess.GetDataTable(sql);//外部方法(通过一条查询语句返回一个DataTable)
dt.DefaultView.RowFilter = "Sex=女";
dt.DefaultView.RowFilter = "Age>18";
dt.DefaultView.RowFilter = "Name like '%张%'";
不过RowFilter不支持不等于(<>、!=、not like),不过如果只是单纯的对确定的字符串操作,可以用in和not in,数据库查询语句则不行。
Dim dt As DataTable = Getdata(20078, "abc")
Dim view As DataView = New DataView(dt)
view.RowFilter = "Names in('ttt','tttt')"
GridView1.DataSource = view.ToTable() --这个才过滤成功
GridView1.DataBind()
Private Function GetNewTable(ByVal dt As DataTable, ByVal filter As String) As DataTable
Dim newTable As DataTable = dt.Clone()
Dim drs As DataRow() = dt.Select(filter)
For Each dr As DataRow In drs
Dim arr As Object() = dr.ItemArray
Dim newrow As DataRow = newTable.NewRow()
For i As Integer = 0 To arr.Length - 1
newrow(i) = arr(i)
Next
newTable.Rows.Add(newrow)
Next
Return newTable
End Function
datatable 中select在vb.net中写法
ds.Tables("RoomType").Select("MealType=" & "'" & mgdr("MealType") & "' and Roomtypecode=" & "'" & mgdr("Roomtypecode") & "' and Availability=" & "'" & mgdr("Availability") & "' and VendorCurreny=" & "'" & mgdr("VendorCurreny") & "' and RoomAdults=" & "'" & mgdr("RoomAdults") & "' and FromDate=" & "'" & mgdr("FromDate") & "' and ToDate=" & "'" & mgdr("ToDate") & "' and Runno=" & "'" & mgdr("Runno") & "'")
也可以用String.Format 格式化
data.Tables("error").Columns.Remove("postXml")'移除某列数据
GridView2.DataSource = data.Tables("error")
GridView2.DataBind()
DataTable RowFilter 过滤数据的更多相关文章
- ADO.NET 快速入门(十):过滤数据
我们有很多方法来过滤数据.一种是在数据库命令级别,利用 where 子句查询过滤数据.另一种是在数据填充到 DataSet 以后过滤数据.本篇讨论后者. 一旦数据填充到 DataSet,你可以使用 ...
- 20180322 对DataTable里面的数据进行去重
对DataTable里面的数据进行去重 DataTable dt = new DataTable(); dt.Columns.Add("Id", typeof(int)); dt. ...
- 怎样简单灵活地将DataTable中的数据赋值给model
最近在做的一个项目中,有13个方法都需要用到同一种处理方式:通过SQL语句从数据库获取一条指定的数据,并将该数据中的每个值都赋值给一个model,再将这个model中的数据通过微信发送出去.每个方法都 ...
- C#利用SqlDataAdapte对DataTable进行批量数据操作
C#利用SqlDataAdapte对DataTable进行批量数据操作,可以让我们大大简化操作数据的代码量,我们几乎不需要循环和不关心用户到底是新增还是修改,更不用编写新增和修改以及删除的SQL语句, ...
- asp.net过滤数据中有异常数据字符串
/// <summary> /// 过滤数据 /// </summary> /// <param name="_str"></param& ...
- 用php自带的filter函数验证、过滤数据 -转载
PHP过滤器包含两种类型 Validation:用来验证验证项是否合法 Sanitization:用来格式化被验证的项目,因此它可能会修改验证项的值,将不合法的字符删除等. input_filters ...
- Android利用Filter过滤数据
MainActivity如下: package cc.testfilterable; import java.util.ArrayList; import java.util.HashMap; imp ...
- Silverlight中如何自己写方法将DataTable转换为PagedCollectionView数据(动态创建类)
将DataTable转换为PagedCollectionView数据,我们可以借用DataTable的GetBindableData()方法,如下: DataTable dt=new DataTabl ...
- 从DataTable中查询数据
/// <summary> /// 从DataTable中查询数据 /// </summary> /// <param name="tb">待处 ...
随机推荐
- jq--ajax中止请求
比如我后端设置延迟3s再响应给前端,我用的是node之koa2 router.get('/vueDemo/getStudents', async ( ctx ) => { //延迟3s asyn ...
- 【android】开源一个企业通讯录app
软件背景:该app不是替代手机通讯录,而是对其一种补充.项目只是通讯录客户端,数据源是访问本地.还是访问远程服务器,由你来实现 开源地址:http://git.oschina.net/yso/Smar ...
- 两个java小练习
网上看到的一个小练习,自己写了一个,但是时间限制并不符合,并且貌似还有些小问题,暂时放在这儿,代码格式什么的也不太规范. 1.班级排名时间限制: 1000ms 内存限制: 65536kB 描述 信息科 ...
- linux 注销其他用户
本文主要参考:http://ysz520020.blog.163.com/blog/static/352595722011969264745 linux kill掉其他的登录用户 : 方法一: 使用 ...
- ios 常见问题解决 以及小技巧
1.使用cocoaPods引用第三方类库,报错:file not found . 解决方案:设置 Project->Info->Configurations之后 clear ,然后再 ...
- python-静态方法staticmethod、类方法classmethod、属性方法property
Python的方法主要有3个,即静态方法(staticmethod),类方法(classmethod)和实例方法 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 def ...
- [原创]CSS 去掉点li 的点 使得LI前面的点不在显示
我对博客的认识是:记录问题,解决问题,分享知识.如果有轮子,我不需要造轮子. 1.问题解决方式: 设置属性:li {list-style-type:none;} 2.更多属性参数参考 list-sty ...
- linux安全第一周总结——20135227黄晓妍
实验部分: 我将源代码做了修改,将其中一个数字修改为我学号27 2.在实验楼环境下将其保存为text.c并将其编译,得到text.s 3.将.开头的多余的语句删去了之后,我得到了32位环境的汇编代码 ...
- linux启动过程⭐
启动第一步--加载BIOS当你打开计算机电源,计算机会首先加载BIOS信息,BIOS信息是如此的重要,以至于计算机必须在最开始就找到它.这是因为BIOS中包含了CPU的相关信息.设备启动顺序信息.硬盘 ...
- MySQL中变量的用法——LeetCode 178. Rank Scores
Write a SQL query to rank scores. If there is a tie between two scores, both should have the same ra ...