首页 > 解决方案 > 如何在 HQL @Query 中集成两个表列

问题描述

我们不能使用 union,因为 HQL 不支持它。在不使用联合和加入 HQL 的情况下组合两个不同表的替代方法是什么?
我们不能使用“或”来组合表,因为没有相似的表或列。
我们也可以进行两个不同的查询,然后合并到一个列表中,但这对我们不利,所以如果有任何解决方案可行,请建议

我们希望在 HQL 中实现的 Sql 查询。

select m.* from (select a.* from a1 a where a.id=1 union select b.* from b1 b where b.id =1) m order by m.id desc

可能吗?答案将不胜感激!

标签: javasqlpostgresqlunionhql

解决方案


这些表是否具有相同的数据结构?如果是,您可以使用 INSERT INTO...SELECT 语句,因为它在 HQL 中受支持。

在 SQL 中,它看起来像:

  insert into a select b.* from b where b.id =1

对于 HQL 中的 INSERT INTO...SELECT 语句,请看这里:

https://mkyong.com/hibernate/hibernate-query-examples-hql/


推荐阅读