使用sql语句实现分页:
(1)select top 3 * from dbo.Users where id not in(
select top(0*3) id from dbo.Users order by id desc
) order by id desc
用not in时它的处理效率比较低。
(2)
当page页面大于1时使用。
select top 3 * from users where id
select top 1 id from (select top(1*3) id from users order by id desc)
as t order by id )order by id desc
当page页面等于0时使用。
select top 3 * from users order by id desc
我们一般都是用这种方法。
(3)select top 3 * from (select rowid = row_number()over(order by id desc),* from users) as t
where rowid>3*3
下面是个具体的应用:
这个是在dal层的应用:
//根据sql语句实现分页
public List Select(IProvider provider,int page,int count)
{
string sql = "";
if (page > 0)
{
sql = "select top " + count + " * from dbo.Admin wher