如何创建不返回完整记录的 JPA 派生查询?

问题描述 投票:0回答:1

假设我有一个简单的表,可以通过派生的 JPA 查询访问。

name | age | job
----------------
sam  | 40  | IT
sue  | 37  | BU
tri  | 62  | BU
ria  | 28  | IT
tom  | 55  | CO

我今天的所有派生查询都会返回行列表(findBy...)。

是否可以有一个返回字符串列表的派生查询?

我需要一份所有可能的工作的清单。

SELECT job FROM mytab GROUP BY job;


--
IT
BU
CO

那将是一个字符串列表。

但不确定如何使用派生查询来做到这一点 - 如果可能的话。

java spring-boot hibernate jpa
1个回答
0
投票

据我最近发现,在我看来,最简单的方法(没有新实体、存储库……)是使用 @Query 进行本机查询。

public interface MyRepo extends JpaRepository <MyRecord, Long>
{   
    // all my other interface-methods
    List <MyRecord> findByNameAndAge (String name, Integer age);  // just for a sample
    

    @Query (value = "SELECT hint FROM my_record GROUP BY hint", nativeQuery = true)
    List  <String> listHints ();
}
© www.soinside.com 2019 - 2024. All rights reserved.