【问题标题】:Not able to copy data from many table and insert into one table using hibernate query无法从多个表中复制数据并使用休眠查询插入到一个表中
【发布时间】:2016-04-11 08:14:25
【问题描述】:

我正在尝试使用 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来自所有选择查询的所有数据。当我在数据库上执行上述查询时,它成功获取了数据。

【问题讨论】:

  • 您在使用 HQL 吗?如果你不记得使用 nativeQuery 像:Query q = session.createNativeQuery(....
  • 休眠中不支持 UNION。您可以使用本机 SQL 查询

标签: mysql hibernate


【解决方案1】:

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

【讨论】:

    猜你喜欢
    • 2018-05-19
    • 1970-01-01
    • 2014-11-26
    • 1970-01-01
    • 2013-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-29
    相关资源
    最近更新 更多