SQLite如何在分页查询的同时返回总数

SQLite3进行分页查询,需要获取到总数
这样我好直接跳转到最后一页之类的,应该怎么写啊
用MySQL的方法好像不行

 1. MS SQL Server查询测试

 DECLARE @v_rowsPerPage int    --每页行数
 DECLARE @v_TotalPages int     --总页数
 DECLARE @v_rowCurrent bigint  --当前记录行
 --DECLARE @v_PageCurrent int    --当前页号

 set @v_rowsPerPage=100        --假设每页100条
 select @v_tCount=sum(1) from CheckTableName --测试查记录数
 select @v_TotalPages=Ceiling(@v_tCount*1.0/@v_rowsPerPage) --测试计算总页数

 print '记录数='+cast(@v_tCount as varchar)
 print '总页数='+cast(@v_TotalPages as varchar)

2. 依应用场景,不同数据库可使用不同方式控制对应页行数
(1)MySQL可用limit2)ORACLE可用隐含的行号RowNum
(3)MS SQL Server可用top,结合排序条件(order by3.模拟分页查询逻辑(较多人验证过效率还可以)
(1) MS SQL Server的ROW_NUMBER()
select top 每页行数 * from
(
    select top (页码*1每页行数) ROW_NUMBER() OVER (order by id) AS RowNum,
    t.*
    FROM  CheckTableName  t
    -- where 条件
) t
where RowNum between (页码-1)*每页行数+1 AND 页码*每页行数
order by RowNum

(2)使用主键排序
--假设主键为ListNo
select top 每页行数 * FROM CheckTableName
where --条件1 and
ListNo >(
    select isnull(Max(ListNo),0)
    FROM
    (
        select top ((页码-1)*每页行数) ListNo
        FROM CheckTableName  --测试表名
        --where 条件1        --与前面条件1相同
        order by ListNo
    ) t
) 
order by ListNo