Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从DB2中的数据库中选择的记录数_Db2 - Fatal编程技术网

从DB2中的数据库中选择的记录数

从DB2中的数据库中选择的记录数,db2,Db2,我一次只能从数据库DB2中获取50条记录,为此我一直在使用Row_编号,但现在人们告诉我,Row_编号不稳定,并且有bug,所以现在我必须为相同的数据编写一个不同的查询,因为我一次只能获取50条记录 那么请任何人也能帮我吗 提前谢谢 我一直使用的查询是 SELECT PLC.* FROM (SELECT ROW_NUMBER() OVER (ORDER BY PRDLN_CTLG_OID) AS Row, PRDLN_CTLG_OID,

我一次只能从数据库DB2中获取50条记录,为此我一直在使用Row_编号,但现在人们告诉我,Row_编号不稳定,并且有bug,所以现在我必须为相同的数据编写一个不同的查询,因为我一次只能获取50条记录

那么请任何人也能帮我吗

提前谢谢

我一直使用的查询是

SELECT PLC.* 
FROM
     (SELECT 
          ROW_NUMBER() OVER (ORDER BY PRDLN_CTLG_OID) AS Row,
          PRDLN_CTLG_OID, 
          PRODUCT_LINE_OID      AS  PRODUCT_LINE_OID, 
          RTRIM(CATALOG_ID)             AS  CATALOG_ID,
      FROM 
          PROD_LINE_CATALOG 
      WHERE 
          PRODUCT_LINE_OID = :productLineOID AND ACTV_IND = 1 
      ORDER BY CATALOG_ID) PLC
WHERE  
    Row >= :startIndex AND Row <= :endIndex
ORDER BY 
    PLC.CATALOG_ID DESC 
WITH UR
使用fetch子句

FETCH FIRST 50 ROWS ONLY
编辑

看起来您使用了startIndex和endIndex值。我知道你们将这些和行进行比较,但你们还有其他的索引要比较吗?如果不是,并且您坚持从行编号移动,那么该表可能需要另一个索引

Select PLC.* From (Select omitting row_number())
Where yournewindex >= startIndex
Fetch first 50 rows only
使用fetch子句

FETCH FIRST 50 ROWS ONLY
编辑

看起来您使用了startIndex和endIndex值。我知道你们将这些和行进行比较,但你们还有其他的索引要比较吗?如果不是,并且您坚持从行编号移动,那么该表可能需要另一个索引

Select PLC.* From (Select omitting row_number())
Where yournewindex >= startIndex
Fetch first 50 rows only

有人已经回答了这个问题。如果我没有错的话,你是在要求分页


有人已经回答了这个问题。如果我没有错的话,你是在要求分页


在11个月的时间里,你问了12个问题,得到了23个答案,但你没有接受任何问题。奖励那些你觉得有用的人怎么样?在11个月的时间里,你已经问了12个问题,收到了23个答案,但你没有接受任何问题。奖励那些你觉得有用的人怎么样?与查询开头的LIMIT或TOP子句不同,FETCH子句位于endDavid,但是FETCH记录总是只从数据库中给我前N行,如果我想获得介于50到100之间的记录,它肯定不支持它。与查询开头的LIMIT或TOP子句不同,FETCH子句位于endDavid,但是FETCH记录总是只从数据库中给我前N行,如果我想获得介于50到100之间的记录,它肯定不支持它。