JPA将两个或多个表合并到另一个表中

时间:2011-01-05 10:12:53

标签: java sql hibernate jpa

是否可以从某些表(实体)中获取一些列并使用JPA,Hibernate将它们存储到另一个表的列中?

例如;
表1:id,name,surname,...
表2:身份证,学校,城市,......

表3:unqId,姓名,学校,城市

从Table1和Table2中选择并插入表3。

或者,选择结果作为表1和表2中的Table3实体。

感谢。

1 个答案:

答案 0 :(得分:1)

是的,如果Table1Table2有某种关系,或者说是可加入的。然后你可以像这样在SQL中执行插入查询,

insert into Table3 (....) select .... from Table1 inner join Table2..

现在,您将如何使用JPA实现相同目标。

  1. 使用NamedQuery或您认为更好的任何内容获取所需的POJO
  2. 使用手持结果
  3. 设置Table3属性
  4. 坚持Table3
  5. 如果Table1Table2无法加入,则需要单独查询。并在JPA中执行相同的步骤2和3。在SQL中,可以使用存储过程。