(c#)DefaultView.RowFilter 如何筛选记录
我想实现,下面那条SQL语句的功能selecttop20*fromviewOnclickorderbyiddesc;===========================...
我想实现,下面那条SQL语句的功能
select top 20 * from viewOnclick order by id desc;
===========================
RowFilter 该如何写?
关键是 top 功能无法实现呀?大家有办法吗? 展开
select top 20 * from viewOnclick order by id desc;
===========================
RowFilter 该如何写?
关键是 top 功能无法实现呀?大家有办法吗? 展开
5个回答
展开全部
RowFilter只能通过条件筛选,前提是你sql返回所有的,然后使用DataView.RowFilter去离线数据库里筛选出符合条件的记录,你已经用sql top了怎么还设置RowFilter?
还有RowFilter是通过条件去筛选的.所以你要实现那个功能,首先要有一个连续增长的列,假设为RowNumber,代码如下
dv.RowFilter = "RowNumber < 21";
修改一下你的sql
sql server 2005以后的版本
select ROW_NUMBER() OVER(ORDER BY Id ASC ) as RowNumber,* from viewOnclick
sql server 2005以前的版本
Select (Select sum(1) from viewOnclickwhere id <= v.id) as iid,* from viewOnclick v order by iid
还有RowFilter是通过条件去筛选的.所以你要实现那个功能,首先要有一个连续增长的列,假设为RowNumber,代码如下
dv.RowFilter = "RowNumber < 21";
修改一下你的sql
sql server 2005以后的版本
select ROW_NUMBER() OVER(ORDER BY Id ASC ) as RowNumber,* from viewOnclick
sql server 2005以前的版本
Select (Select sum(1) from viewOnclickwhere id <= v.id) as iid,* from viewOnclick v order by iid
展开全部
不用RowFilter,Sort="id desc",然后取前20个数据就行了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
筛选好像不能制定返回的行数吧
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
循环datatable前20行重新赋值给一个新的datatable
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
分页?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询