gpt4 book ai didi

hibernate - Spring Data JPA 中的连接查询

转载 作者:行者123 更新时间:2023-12-02 23:04:42 27 4
gpt4 key购买 nike

我想写一个像这样的连接

Select a.id,a.desc,b.desc from A a  left join B b on a.MEDIA_ID = b.ID

我创建了两个实体 A 和 B 并创建了 CrudRepository<A,Long>

现在,在 crudRepository 中需要编写一个可以使用上面的 join 获取数据的方法。

此外,我在实体 A 中创建了一个 transient 变量(将其命名为“bDescription”)如何在 Spring Data JPA 中实现这一点。

注意:我需要加入只是为了找出实体 B 的特定 id(B 中的主键并映射为 A 中的“MEDIA_ID”)的“描述”(B 中的一列)..

提前致谢

最佳答案

这是使用 SpringData 进行 JOIN 查询的示例

public final static String FIND_WITH_DESC_QUERY = "SELECT a,b.desc as  bDescription " + 
"FROM A a LEFT JOIN a.descriptions b " +
"WHERE a.mediaID = :id";


@Query(FIND_WITH_DESC_QUERY)
public List<Media> findWithDescription(@Param("id") Long id);

注意:

  • descriptions是实体A和B之间关系的映射。
  • 这个假设 @OneToMany Set<B> descriptions()

useful link

关于hibernate - Spring Data JPA 中的连接查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20043264/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com