这个子查询怎么用hibernate语法写出来
select * from (select SUM(onlinePerson) p, timestamp, marketID from SidOnline group by timestamp, marketID having timestamp<:end and timestamp>=:begin and marketID=:marketId) t where t.p =(select max(s.p) from
(select SUM(onlinePerson) p, timestamp, marketID from SidOnline group by timestamp, marketID having timestamp<:end and timestamp>=:begin and marketID=:marketId) as s)