string sql = " select top " + NumPerPage + " * from Base_Sale where DateTime not in (select top " + ((PageNum - 1) * NumPerPage) + " DateTime from Base_Sale where 1=1 " + GetWhere() + " order by DateTime desc) " + GetWhere() + " order by DateTime desc"; 已经解决了,谢谢各位了DateTime from和DateTime not in 把这两个换成ID就没问题了,
select *
from
(
select *,
ROW_NUMBER() over(order by DateTime desc) rownum
from Base_Sale
)t
where rownum <= 20
实际上就是用行号代替了排完序的时间(同一时间也会有不同的行号);分页一定要是唯一的值。
如果你的ID是自增的话 就可以用ID分页。
已经解决了,谢谢各位了DateTime from和DateTime not in 把这两个换成ID就没问题了,