我正在使用spring数据jpa。我在两张桌子上有一个内部联接。这是我的疑问。
delete
这里的两张表没有任何关系。因此,列名称上的一对一或多对一或多对多没有意义。我可以定义没有关系的实体吗?我们在这两个表上进行内连接的原因很简单,因为对它们进行连接将是一个昂贵的查询。
答案 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);
附注:
A
到ABC
的别名,因为查询编写不正确。您可以根据需要随意编辑投影。UserInfoDetails
类,假设它将返回类似的东西。随意根据您的需求进行更改。