首页  >  问答  >  正文

java - Hibernate的fetch属性中的select和subselect有什么区别,有使用场景吗

如题,谢谢各位指点

高洛峰高洛峰2734 天前475

全部回复(1)我来回复

  • 为情所困

    为情所困2017-05-17 10:05:48

    • SUBSELECT:避免N+1并且不重复数据,但将相关类型的所有实体加载到内存中。

    FetchMode.SUBSELECT应该是这样的:

    SELECT <employees columns>
    FROM EMPLOYEE employees0_
    WHERE employees0_.DEPARTMENT_ID IN
    (SELECT department0_.DEPARTMENT_ID FROM DEPARTMENT department0_)

    FetchMode.SUBSELECT可以显着的减少查询的数量

    找到一个讲的很好的文章

    回复
    0
  • 取消回复