来自多个表的Spring数据jpa

时间:2017-10-10 17:22:11

标签: java spring spring-data-jpa

我正在使用spring数据jpa。我在两张桌子上有一个内部联接。这是我的疑问。

delete

这里的两张表没有任何关系。因此,列名称上的一对一或多对一或多对多没有意义。我可以定义没有关系的实体吗?我们在这两个表上进行内连接的原因很简单,因为对它们进行连接将是一个昂贵的查询。

1 个答案:

答案 0 :(得分:0)

您可以定义两个实体而不需要任何关系,然后您可以在read方法中检索nativeQuery=true注释中指定@Query(..)的数据。

@Query(value = "SELECT ABC.NAME, ABC.CARD_NUMBER, ABC.ADDRESS, ABC.EMAIL " +
               "FROM USER_INFO ABC " +
               "INNER JOIN USR_DETAIL DEF ON (ABC.ID = DEF.ID) " +
               "WHERE ABC.ID = :id", nativeQuery = true)
UserInfoDetails retrieveUserInfoAndDetailById(@Param("id") String id);

附注:

  • 在查询的投影中,我更正了从AABC的别名,因为查询编写不正确。您可以根据需要随意编辑投影。
  • 作为一个返回类型,我写了一个UserInfoDetails类,假设它将返回类似的东西。随意根据您的需求进行更改。