java - 带有可递增变量的 Spring 自定义 @Query

标签 java spring spring-data-jpa

我有一个映射到自定义对象的查询:

@Query("SELECT new com.mypackage.CmcXml(c.nom, c.prenom, c.genre "+
                "FROM Cmc c")
List<CmcXml> getExportCmc();

所以我得到了这样的结果:

{"NOM1", "PRENOM1", "GENRE1"},
{"NOM2", "PRENOM2", "GENRE2"},
{"NOM3", "PRENOM3", "GENRE3"}

我想要一个在检索数据时递增的计数器:

@Query("SELECT new com.mypackage.CmcXml(myCounter, c.nom, c.prenom, c.genre "+
                "FROM Cmc c")
List<CmcXml> getExportCmc();

我想要的结果:

{1, "NOM1", "PRENOM1", "GENRE1"},
{2, "NOM2", "PRENOM2", "GENRE2"},
{3, "NOM3", "PRENOM3", "GENRE3"}

是否可以在@Query 中执行此操作,还是我必须在请求后遍历所有列表?

最佳答案

不,jpa/hibernate 不支持行号。您必须使用 native 查询。

关于java - 带有可递增变量的 Spring 自定义 @Query,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56060830/

相关文章:

java-在java代码中使用select语句未分配给变量

java - 使用不需要的参数创建查询 Spring Data Jpa

java - hibernate : One to many mapping is leading to circular objects

java - Spring Tool Suite 向导生成的 NoClassDefFoundError

java - @ResponseBody 返回空对象

java - 在联合表上使用 Specifications 和 CriteriaQuery 的 Spring JPA

java - 使用Java中的doGet()编写HTML代码

java - Android中与线程的异步套接字通信

java - 不使用 @valid 的 Spring bean 验证

java - ManyToMany HQL Join - 连接的预期路径