我有一个很大的查询,然后转换为JSON,因此在转换过程中我在Java中获得了OutofMemory的例外。我要实现的目标是将查询分开多次动态调用。
即
SELECT ROWS x/10 multiply by (SELECT COUNT(*) FROM myquery) to
y/10 multiply by (SELECT COUNT(*) FROM myquery)
FROM myquery
我正在从http端点上的python脚本调用此查询
示例选择第一个0/10至1/10记录,然后选择1/10至2/10,然后选择2/10至3/10 ... 9/10至10/10。
您需要一个字段才能订购行调用order_field
。并使用分析函数 ntile(10)创建10组
然后通过变量@YourPage
表示您想要哪个页面
SELECT *
FROM (
SELECT *,
NTILE(10) OVER (ORDER BY order_field) as page_number
FROM yourTable
) T
WHERE T.page_number = @YourPage