diff --git a/lib/db/upgrade.php b/lib/db/upgrade.php index 5133db0bb84..34a63575323 100644 --- a/lib/db/upgrade.php +++ b/lib/db/upgrade.php @@ -2786,11 +2786,12 @@ function xmldb_main_upgrade($oldversion) { if ($oldversion < 2020101600.01) { // Delete orphaned course_modules_completion rows; these were not deleted properly // by remove_course_contents function. - $DB->delete_records_subquery('course_modules_completion', 'id', 'id', - "SELECT cmc.id - FROM {course_modules_completion} cmc - LEFT JOIN {course_modules} cm ON cm.id = cmc.coursemoduleid - WHERE cm.id IS NULL"); + $DB->delete_records_select('course_modules_completion', " + NOT EXISTS ( + SELECT 1 + FROM {course_modules} cm + WHERE cm.id = {course_modules_completion}.coursemoduleid + )"); upgrade_main_savepoint(true, 2020101600.01); }