我有一对多关系的消息和评论,即一条消息有多条评论,所以如果会话为空,我需要根据消息表中的最新sentDateTime获取消息,否则根据最新会话createddatetime获取消息。我在下面准备了一个MySQL查询
SELECT distinct
m.MessageId as MessageI1_2_,
m.MessageBody as MessageB2_2_
FROM Message AS m
ORDER BY GREATEST(m.sentDateTime, (
SELECT MAX(c.createdDateTime)
FROM Conversation AS c
WHERE c.messageId = m.`MessageId`
)) DESC
它工作正常,但我想通过使用谓词将上述查询转换为Jpa规范。所以我应该怎么做,提前谢谢。