我们需要通过发送器获取最后发布的消息组。JAVA Persistence OrderBy在GroupBy之前
Query query = em.createQuery("SELECT m FROM Message m " + "JOIN m.transmitter " + "JOIN m.recipient " + "WHERE m.transmitter = :u1 " + "OR m.recipient = :u1 " + "GROUP BY m.recipient,m.transmitter " + "ORDER BY m.sendDate DESC"); query.setParameter("u1", actualUser);
,但我们需要的是这样的,我们得到了最早的消息:
Query query = em.createQuery("SELECT m FROM Message m " + "JOIN m.transmitter " + "JOIN m.recipient " + "WHERE m.transmitter = :u1 " + "OR m.recipient = :u1 " + "ORDER BY m.sendDate DESC" "GROUP BY m.recipient,m.transmitter "); query.setParameter("u1", actualUser);
感谢您的帮助对不起我的英语。
不是真的和JPQL不接受子查询。 – 2014-12-05 15:53:38