Consultar questões randômica
SELECT * FROM mdl_question WHERE qtype='random'
Contar quantidade de questões randômicas
SELECT COUNT(id) FROM mdl_question WHERE qtype='random';
Contar quantidade de questões randômicas até uma determinada data
SELECT COUNT(id) FROM mdl_question WHERE qtype='random' AND timecreated <= ?;
Contar quantidade de questões randômicas por categoria de questões
SELECT COUNT(id),category FROM mdl_question WHERE qtype='random' GROUP BY category ORDER BY COUNT(id) DESC;
Apagar questões randômicas até uma determinada data
DELETE FROM mdl_question WHERE qtype='random' AND timecreated <= ?;
Mapear quantidade de questões randômicas não alocadas no questionários
SELECT COUNT(q.id) FROM mdl_question q LEFT JOIN mdl_quiz_slots s ON s.questionid=q.id WHERE q.qtype='random' AND s.questionid IS NULL;
Mapear quantidade de questões randômicas não alocadas no questionários com subconsulta
SELECT COUNT(q.id) FROM mdl_question q WHERE q.qtype='random' AND (SELECT COUNT(s.id) FROM mdl_quiz_slots s WHERE q.id=s.questionid) =0;
Mapear quantidade de questões randômicas alocadas no questionários
SELECT COUNT(q.id) FROM mdl_question q WHERE q.qtype='random' AND (SELECT COUNT(s.id) FROM mdl_quiz_slots s WHERE q.id=s.questionid) =1;
Limpar as questões randômicas não alocadas nos questionários. Isso resolve problema de erro de duplicação e backup de questionário
DELETE FROM mdl_question WHERE qtype='random' AND id NOT IN (SELECT questionid FROM mdl_quiz_slots) LIMIT 3000000;