假设我有一个简单的表,可以通过派生的 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
那将是一个字符串列表。
但不确定如何使用派生查询来做到这一点 - 如果可能的话。
据我最近发现,在我看来,最简单的方法(没有新实体、存储库……)是使用 @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 ();
}