JPA将两个或多个表合并到另一个表中
问题描述:
是否可以从某些表(实体)中取出某些列并使用JPA,Hibernate将它们存储到另一个表的列中?JPA将两个或多个表合并到另一个表中
例如;
表1:ID,姓名,...
表2:身份证,学校,城市,...
表3:unqId,姓名,学校,城市
选择从表1和表2并插入到Table3中。
或者,也可以从Table1和Table2中选择结果作为Table3实体。
谢谢。
答
是的,如果Table1
和Table2
有一些关系,或者说可以连接。然后你可以这样在SQL中执行插入查询,
insert into Table3 (....) select .... from Table1 inner join Table2..
现在,你将如何使用JPA实现相同。
- 使用
NamedQuery
或任何你认为是获取所需的POJO更好 - 设置使用结果在手
Table3
性能 - 坚持
Table3
如果Table1
和Table2
是不可加入,那么你需要分别查询两者。在JPA中执行相同的步骤2和3。在SQL中,可以使用存储过程。
感谢您的回答,我用第一个选项使用了本机SQL。 – 2011-01-05 13:31:49
@ykartal:很高兴听到这个消息。不用谢。 – 2011-01-06 02:43:25