上图是我用来记录项目位置的数据库结构的简化版本。我编写了以下 SQL 查询,它返回每个位置的当前项目库存:
select *
from ItemLocationLog l
inner join
(select g.idItemLocationLog, max(g.dateTime) as latest
from ItemLocationLog g
group by g.idItem)
as i
on l.idItem = i.idItem and l.dateTime = i.latest
我遇到的问题是我想将其转换为 HQL,但我还没有找到在子查询上执行 INNER JOIN 的语法,而且似乎不支持。有没有办法将上述内容转换为 HQL(或标准),或者在这种情况下我必须使用标准 SQL 查询吗?谢谢。