Java 如何限制来自数据库、Spring数据、JPA、DB2的结果
使用带有JpaRepository的Spring Boot应用程序首次查询DB2数据库。我将如何进行前20行的sysout?只是想测试我是否能够访问表数据。最后,这个DB2表大约有24列,但我没有在这个表上看到指定的主键。通过TSOA使用platinum查看表格数据。我想有一个命令可以找到PK,但我的研究没有找到答案。在DB2SQL中,您可以使用Java 如何限制来自数据库、Spring数据、JPA、DB2的结果,java,spring-boot,spring-data-jpa,db2,Java,Spring Boot,Spring Data Jpa,Db2,使用带有JpaRepository的Spring Boot应用程序首次查询DB2数据库。我将如何进行前20行的sysout?只是想测试我是否能够访问表数据。最后,这个DB2表大约有24列,但我没有在这个表上看到指定的主键。通过TSOA使用platinum查看表格数据。我想有一个命令可以找到PK,但我的研究没有找到答案。在DB2SQL中,您可以使用 SELECT * FROM MY_TABLE FETCH FIRST 20 ROWS ONLY 或同等地 SELECT * FROM MY_TABL
SELECT * FROM MY_TABLE FETCH FIRST 20 ROWS ONLY
或同等地
SELECT * FROM MY_TABLE LIMIT 20
主键列可以通过类似这样的SQL找到(在DB211.1以后的版本中)
@PersistenceContext
私人实体管理者实体管理者;
@凌驾
公共列表FindOrderedBySatNumberLimitedTo(整数限制){
返回entityManager.createQuery(“按p.seatNumber从乘客p订单中选择p”,
setMaxResults(limit).getResultList();
}
Google:“分页”帮助我了解自己声誉的负面影响,这样我以后就可以避免了。
SELECT
TABSCHEMA, TABNAME
, LISTAGG(COLNAME,', ') WITHIN GROUP (ORDER BY COLSEQ) AS PK_COLS
FROM
SYSCAT.KEYCOLUSE KU
JOIN SYSCAT.TABCONST TC USING ( TABSCHEMA, TABNAME, CONSTNAME )
WHERE
TC.TYPE = 'P'
GROUP BY
TABSCHEMA, TABNAME
@PersistenceContext
private EntityManager entityManager;
@Override
public List<Passenger> findOrderedBySeatNumberLimitedTo(int limit) {
return entityManager.createQuery("SELECT p FROM Passenger p ORDER BY p.seatNumber",
Passenger.class).setMaxResults(limit).getResultList();
}