Closed. This question needs details or clarity。它当前不接受答案。
                            
                        
                    
                
                            
                                
                
                        
                            
                        
                    
                        
                            想改善这个问题吗?添加详细信息并通过editing this post阐明问题。
                        
                        3年前关闭。
                                                                                            
                
        
我有以下实体


投稿
SubmissionEvent(状态(0、1或2),日期)


Submission与SubmissionEvent具有一对多关系。因此,我试图构建一个DQL,在其中可以基于SubmissionEvent的日期选择最后一个状态。所以我想要的是内部加入提交事件,但仅限最后一个事件。

我试图在内部联接上使用MAX子句,但是没有用。

最佳答案

尝试这个:

SELECT
    s.name, se.*
FROM Submission s INNER JOIN SubmissionEvent se
        ON s.id = se.submission_id
    INNER JOIN (SELECT submission_id, MAX(event_date) event_date
                FROM SubmissionEvent
                GROUP BY submission_id) t
        ON s.id = t.submission_id

10-08 14:39