私は sql server 2008 プロシージャを使用しています。合計行をページごとに割っています。結果に小数値が含まれている場合は、その上限値に丸める必要があります。
私は以下を使用しました:
SELECT FLOOR(@TOTAL / CAST(@PageSize AS FLOAT)) AS TOTALPAGES, @TOTAL AS TOTALROWS
@total が float の場合、これは機能しません。私も以下で試しました
SELECT ROUND(@TOTAL / CAST(@PageSize AS FLOAT),0) AS TOTALPAGES, @TOTAL AS TOTALROWS
これは小数が >= 5 の場合にのみ機能し、それ以外の場合は上限値を取りません。
結果が12.2の場合、13を返す必要があります