Java JPA:如何获取不同列的记录:
如何编写查询以获取在一列中不同且在另一列中顺序不同的记录 我能够使用以下语句获取记录Java JPA:如何获取不同列的记录:,java,mysql,sql,hibernate,jpa,Java,Mysql,Sql,Hibernate,Jpa,如何编写查询以获取在一列中不同且在另一列中顺序不同的记录 我能够使用以下语句获取记录 select * from (select * from t1 where id=14 order by ttimestamp desc) as h group by hnumber order by ttimestamp desc 但当我在JPA中尝试同样的方法时 SELECT m from (SELECT m from t1 m WHERE m.user =
select * from
(select * from t1
where id=14
order by ttimestamp desc) as h
group by hnumber
order by ttimestamp desc
但当我在JPA中尝试同样的方法时
SELECT m from
(SELECT m from t1 m
WHERE m.user = :user
ORDER BY m.tTimestamp DESC) as h
GROUP BY m.hNumber
ORDER BY m.tTimestamp DESC
我说语法错误时出错了
Exception Description: Syntax error parsing [SELECT m from (SELECT m from t1 m WHERE m.user = :user ORDER BY m.tTimestamp DESC) as h GROUP BY m.hNumber ORDER BY m.tTimestamp DESC].
The right parenthesis is missing from the sub-expression.
An identification variable must be provided for a range variable declaration.
The query contains a malformed ending.
非常感谢您的帮助。@Leo我也试过这个。。从中选择m从t1中选择n,其中n.user=:用户订单按n.tTimestamp DESC作为h组按m.hNumber ORDER按m.tTimestamp DESC,但它不起作用。如果您的子查询是h,为什么选择m?@Leo您能建议我实现此查询的正确方法吗。我尝试了从SELECT n from t1 n中选择m,其中n.user=:user ORDER BY n.tTimestamp DESC m GROUP BY m.hNumber ORDER BY m.tTimestamp DESC,但失败了。TBH我不明白为什么您需要在语句中进行子选择,外部组BY会使内部顺序BY无效。是否要检索每个ID或特定ID的最新条目?@TassosBassoukos是的,我要检索t1表中每个具有最大时间戳的ID的记录。