Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/spring/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何计算HQL中的子查询?_Java_Spring_Hibernate_Jpa_Hql - Fatal编程技术网

Java 如何计算HQL中的子查询?

Java 如何计算HQL中的子查询?,java,spring,hibernate,jpa,hql,Java,Spring,Hibernate,Jpa,Hql,我需要用HQL(在JPA中使用Hibernate)计算这个子查询 我没有使用Hibernate库,所以我只能用HQL计算。 有人能帮我吗?非常感谢 在回答你的问题之前,也许应该询问更多细节,但我似乎没有足够的观点(或声誉)像其他人那样去做。无论如何,下面是我的想法 假设有XoopsSalesOrder.Id作为主键,XoopsSalesOrder.customerCode是唯一的 select s.customerName, s.customerCode, s.orderDate as last

我需要用HQL(在JPA中使用Hibernate)计算这个子查询

我没有使用Hibernate库,所以我只能用HQL计算。
有人能帮我吗?非常感谢

在回答你的问题之前,也许应该询问更多细节,但我似乎没有足够的观点(或声誉)像其他人那样去做。无论如何,下面是我的想法

假设有XoopsSalesOrder.Id作为主键,XoopsSalesOrder.customerCode是唯一的

select s.customerName, s.customerCode, s.orderDate as last_order_date 
from XoopsSalesOrder s 
where s.Id in (
  select s2.Id from XoopsSalesOrder s2 
  where 
  s2.orderDate = max(s2.orderDate) 
  and s2.orderDate between '2012-7-1' AND '2012-10-1' 
  and s2.orderDate not between '2012-10-1' AND current_date 
  group by s2.customerCode
)

你最终有没有找到一种不绘制完整结果集的方法?
select s.customerName, s.customerCode, s.orderDate as last_order_date 
from XoopsSalesOrder s 
where s.Id in (
  select s2.Id from XoopsSalesOrder s2 
  where 
  s2.orderDate = max(s2.orderDate) 
  and s2.orderDate between '2012-7-1' AND '2012-10-1' 
  and s2.orderDate not between '2012-10-1' AND current_date 
  group by s2.customerCode
)