2016-04-11 30 views
2

我试图将数据从许多表复制并存储到使用休眠查询一个表格插入到一个表。无法将数据从许多表复制和使用Hibernate查询

下面是我的代码:

Query query=session.createQuery("SELECT DISTINCT m.subs_id, m.email_id 
     FROM SubcriberModel m 
     WHERE m.subs_id IS NOT NULL 
     AND m.email_id IS NOT NULL 
     AND m.email_id <> '' 
     UNION ALL "+" 
     SELECT DISTINCT t.tbl_subscribers_subs_id, t.email_id 
     FROM SocialProfileModel t 
     WHERE t.tbl_subscribers_subs_id IS NOT NULL 
     AND t.email_id IS NOT NULL 
     AND t.email_id <> ''"); 

int res = query.executeUpdate(); 

在上述情况下,只能先选择是越来越执行的查询,并成功获取数据。

我想union来自所有选择查询的所有数据。当我在数据库上执行上述查询时,它成功获取数据。

+0

您是否使用HQL? 如果你不是rembember使用nativeQuery,如: 查询q = session.createNativeQuery(... – ZaoTaoBao

+1

UNION不支持在休眠。你可以使用本机SQL查询,虽然 – StanislavL

+0

是的,我使用的是HQL。 – Vaibs

回答

0

使用数据库视图,您可以使用相同的类进行映射,另一个选项是nativeQuery

相关问题