我有一个表id
,seq_id
,tran_date
。MySQL查询到休眠标准
样本数据:
id | seq_id | tran_date ------ | ------ -------- 1 | 1 | 2016-11-01 1 | 2 | 2016-11-01 1 | 1 | 2016-11-02 1 | 2 | 2016-11-02 1 | 1 | 2016-11-12 1 | 2 | 2016-11-12
我预期的结果是
1 | 2 | 2016-11-02
条件:
tran_date
应小于今日(2016年11月8日)和max (seq_id)记录应该列出。
如何使用标准api实现Hibernate查询以上?
实时现在使用MySQL查询是如下,需要将其转换成休眠标准:
SELECT *
FROM testtable tt
WHERE CONCAT(DATE_FORMAT(tt.tran_date, '%Y%m%d'), LPAD(tt.seq_id , 2, '0')) =
(SELECT MAX(CONCAT(DATE_FORMAT(mtv1.tran_date, '%Y%m%d'), LPAD(mtv1.seq_id , 2, '0')))
FROM testtable tt1 WHERE tt1.`Label_Id` = tt1.`id`
AND mtv1.tran_date<= CURRENT_DATE() GROUP BY mtv.`id`)
有两列max(seq_id)。你想要哪一个?最大tran_date? –
好吧,我意识到你的SQL,看到 –