Index: lams_common/src/java/org/lamsfoundation/lams/lesson/dao/hibernate/LearnerProgressDAO.java =================================================================== diff -u -re9e7042e16de3421b8c0cd6b1cf6c59dede544b4 -r5f1b27dd7c5c9ed4732803249f00e4869fb16906 --- lams_common/src/java/org/lamsfoundation/lams/lesson/dao/hibernate/LearnerProgressDAO.java (.../LearnerProgressDAO.java) (revision e9e7042e16de3421b8c0cd6b1cf6c59dede544b4) +++ lams_common/src/java/org/lamsfoundation/lams/lesson/dao/hibernate/LearnerProgressDAO.java (.../LearnerProgressDAO.java) (revision 5f1b27dd7c5c9ed4732803249f00e4869fb16906) @@ -95,10 +95,11 @@ + " progress.lesson.lessonId IN (:lessonIds)"; private final static String LOAD_LEARNERS_LATEST_BY_ACTIVITY = "SELECT u.* FROM lams_learner_progress AS prog " - + "JOIN lams_progress_attempted AS att USING (learner_progress_id) " + "JOIN lams_user AS u USING (user_id) " - + "WHERE prog.current_activity_id = :activityId AND att.activity_id = :activityId " - + "ORDER BY att.start_date_time DESC"; + + "LEFT JOIN lams_progress_attempted AS att ON prog.learner_progress_id = att.learner_progress_id AND att.activity_id = :activityId " + + "LEFT JOIN lams_progress_completed AS comp ON prog.learner_progress_id = comp.learner_progress_id AND comp.activity_id = :activityId " + + "WHERE prog.current_activity_id = :activityId AND (att.learner_progress_id IS NOT NULL OR comp.learner_progress_id IS NOT NULL) " + + "ORDER BY att.start_date_time DESC, comp.start_date_time DESC"; private final static String LOAD_LEARNERS_BY_ACTIVITIES = "SELECT prog.user FROM LearnerProgress prog WHERE " + " prog.currentActivity.id IN (:activityIds) "