Hola a tod@s. Tengo muy pocas nociones (o casi ninguna) sobre Bases de datos.
Tengo montado un moodle versión 3.8
Pero necesito realizar una consulta que me muestre solo los usuarios activos de un curso en concreto, pero no consigo averiguar qué campo utilizar para filtrar (no me refiero a si el usuario está activo en moodle).
Espero que podáis ayudarme
Esta es la query que tengo desarrollada:
SELECT
DISTINCT u.username,
u.firstname AS NOMBRE,
u.lastname AS APELLIDOS,
ic.shortname AS CURSO,
IF(ic.groupmode IS NULL, "PRESENCIAL", "ONLINE") AS GRUPO,
u.email,
from_unixtime(u.firstaccess) as "ALUMNO DESDE",
miscampos.data AS "TELEFONO"
FROM
mdlul_course ic
JOIN mdlul_context con ON con.instanceid = ic.id
JOIN mdlul_role_assignments ra ON con.id = ra.contextid AND con.contextlevel = 50
JOIN mdlul_role r ON ra.roleid = r.id
JOIN mdlul_user u ON u.id = ra.userid
JOIN mdlul_user_info_data miscampos ON miscampos.userid = u.id AND miscampos.fieldid= 3
LEFT JOIN mdlul_groups_members gm ON u.id = gm.userid
LEFT JOIN mdlul_groups g ON g.id = gm.groupid
WHERE
ic.id=12
AND g.name IS NULL
AND u.username NOT LIKE 'email@domain.com'
AND ic.groupmode <> '0'
AND r.id NOT IN (3,4)
ORDER BY g.name ASC