1.SQL自定义分页查询

分页查询
SQL查询设置分页数之后,程序自动生成分页查询SQL语句,获取表总记录数SQL语句,而SQL自定义分页查询,需要填写分页查询SQL语句,获取表总记录数SQL语句

定义分页SQL查询
在报表设计器左边的数据集或是共享数据集,点击“新增”则出现数据集窗口页面选中【SQL自定义分页查询】如下图:

分页SQL
分页变量:_firstRow 开始行pageSize 分页数,每页显示多少条数据
_endRow 结束行数= _firstRow + _pageSize
不同类型数据库分页语法不同,同时SQL支持if表达式

mysql: select * from RPT_VALUE limit :_firstRow, :_pageSize

sqlserver: WITH query AS (SELECT inner_query.*, ROW_NUMBER() OVER (ORDER BY CURRENT_TIMESTAMP) as _report_row_nr_ FROM(SELECT * FROM RPT_VALUE) inner_query ) SELECT * FROM query WHERE _report_row_nr_ >:_firstRow AND _report_row_nr_ <=:_endRow

oracle: select * from ( select row_.*, rownum rownum_ from ( SELECT * FROM RPT_VALUE ) row_ where rownum <=:endRow )where rownum_ > :_firstRow

总记录数SQL
总记录数SQL获取数据表分页的数据总条数,同时SQL支持if表达式
select count(*) from RPT_VALUE