分页查询sql语句,该怎么解决

分页查询sql语句
写一个实现分页的方法..接受三个参数如下参数.就可以实现返回一个能分页的查询语句
方法  static getsql( string sql int pegesize int pageno)这里传一个完整的sql查询语句没和一个每页显示数目(pagesize)还一个当前第几页(pageno)
最好是不同数据库都有分页方法.写到了sqlserver数据库的实现的时候.发现这个不可以了..比如

getsql("select * from table1",10,20)这个语句.这个sql语句可以处理得到一个分页查询sqlserver数据库?
只希望有一个sql语句可以实现


如果没看懂希望可以看看各种数据库各种分页语句
  
------解决方案--------------------
mysql 

select * from table1 order by id limit 10,10;
------解决方案--------------------
select top [每页N条记录] * from (select top [每页N条记录]*[页号] * from tt order by id)
order by id desc 

在SQL2005中,可用排名函数ROW_NUMBER
------解决方案--------------------
mysql 用limit




 LIMIT子句可以被用于限制被SELECT语句返回的行数。LIMIT取一个或两个数字自变量,自变量必须是非负的整数常数(当使用已预备的语句时除外)。

使用两个自变量时,第一个自变量指定返回的第一行的偏移量,第二个自变量指定返回的行数的最大值。初始行的偏移量为0(不是1):