我只想在一个查询中检索我想在 JPA 存储库中写入的数据的计数和列表。我使用构造函数编写并使用实体管理器执行,但它不起作用。它给了我一个 QuerySyntaxException。这是我的查询:
String hql = "select new core.abc(select count(*) from abc as m where m.Id in :Ids and m.Type = :Type,"
+ "select max(m.modificationTime) from abc as m where m.Id in :Ids and m.Type = :Type )";
如何在 JPA 存储库中编写此类查询?
我刚刚弄清楚您的用例场景是您想要从表中获取所有记录以及记录总数和特定列的最大值,您将该列命名为修改时间。因此,在这种情况下,如果您想使用单个查询来处理表,那么您将获得名为 max 和 count 的列的无用数据。
尝试一下 JPA,
@Query(value="SELECT cb from abc cd where cd.Id in (?1) and cd.Type=?2 , (SELECT MAX(m.modificationTime) as maxModificationTime , COUNT(*) as count FROM abc m where m.Id in (?3) and m.Type=?4) as m",nativeQuery=true)
我是一名优秀的程序员,十分优秀!