关于分页总记录数的获取有关问题

关于分页总记录数的获取问题
sql语句是这样的:
String   sql   =   "select   *   from   (select   distinct   "   +   column   +   ",rownumber()   over(order   by   r.rcdId)   as   m   from   tableName)   as   a   where   a.m   between   "   +startNum   +   "   and   "+endNum;

该怎样得到里层select的记录总数?用count()报错

------解决方案--------------------
select * from (select distinct " + column + ",count(*) as count ,rownumber() over(order by r.rcdId) as m from tableName group by "+column+ ") as a where a.m between " +startNum + " and "+endNum
------解决方案--------------------
String sql = "select * from (select distinct " + column + ",rownumber() over(order by r.rcdId) as m from tableName) as a where a.m between " +startNum + " and "+endNum;


----------------------------
1、r.rcdId 这个字段从何而来不清楚
2、要向获得里层的记录数 那么只要取 max(m) 就可以了 但是 楼主rownumber() over(order by r.rcdId) 似乎不是从1 开始的 需要修改一下