Java n我们可以通过…-消除订单-如果您希望搜索结果稳定,则需要使用“订单依据”,句号。否则可能会出现订单意外更改的风险(可能性不同,但这是一种风险)。如果订单不是一个因素,请使用主键(按顺序排列并按该顺序存储的行)。否则,请使用任何合适的标准(客户不关心主键)

Java n我们可以通过…-消除订单-如果您希望搜索结果稳定,则需要使用“订单依据”,句号。否则可能会出现订单意外更改的风险(可能性不同,但这是一种风险)。如果订单不是一个因素,请使用主键(按顺序排列并按该顺序存储的行)。否则,请使用任何合适的标准(客户不关心主键),java,sql,db2,fetch,spring-jdbc,Java,Sql,Db2,Fetch,Spring Jdbc,n我们可以通过…-消除订单-如果您希望搜索结果稳定,则需要使用“订单依据”,句号。否则可能会出现订单意外更改的风险(可能性不同,但这是一种风险)。如果订单不是一个因素,请使用主键(按顺序排列并按该顺序存储的行)。否则,请使用任何合适的标准(客户不关心主键)。而且ROW_NEXT显然只是一个列别名,我不知道为什么它被称为“功能”。。。 private static final String SQL_FETCH_NEXT = "" + "SELECT * " + "FROM ( S

n我们可以通过…-消除订单-如果您希望搜索结果稳定,则需要使用“
订单依据”
,句号。否则可能会出现订单意外更改的风险(可能性不同,但这是一种风险)。如果订单不是一个因素,请使用主键(按顺序排列并按该顺序存储的行)。否则,请使用任何合适的标准(客户不关心主键)。而且
ROW_NEXT
显然只是一个列别名,我不知道为什么它被称为“功能”。。。
private static final String SQL_FETCH_NEXT = ""
    + "SELECT * " 
    + "FROM ( SELECT "
    + "     (ROW_NUMBER() OVER(ORDER BY ID, AGE)) AS RUNNING_NO, ID, NAME, AGE "
    + "         FROM DATABASE1.TABLE1 PERSON "
    + "     ) AS TABLE_ONE "
    + "WHERE TABLE_ONE.RUNNING_NO > :rowNumber "
    + "ORDER BY TABLE_ONE.RUNNING_NO "
    + "FETCH FIRST :fetchCount ROWS ONLY ";
SELECT *
FROM (
    SELECT
         ROW_NUMBER() OVER(ORDER BY ID, AGE) AS RUNNING_NO
        ,ID
        ,NAME
        ,AGE
    FROM DATABASE1.TABLE1 PERSON
) AS TABLE_ONE
WHERE TABLE_ONE.RUNNING_NO  > :rowNumber
  AND TABLE_ONE.RUNNING_NO <= :rowNumber + :fetchCount
ORDER BY TABLE_ONE.RUNNING_NO
private static final String SQL_FETCH_NEXT = ""
    + " SELECT ID, NAME, AGE "
    + " FROM DATABASE1.TABLE1 PERSON "
    + " ORDER BY ID, AGE ";

private static Object runQuery(int pageNum, String filterText) {

//boilerplate code skipped

String sql = SQL_FETCH_NEXT + " fetch first " + pageNum * VALUES_PER_PAGE + " rows only ";

//the rest of the method

}