ich versuche derzeit eine kleine custom API zu schreiben, die mir folgende datan als ganz simplen PHP echo output gibt (getrennt mit Leerzeichen):
- Anzahl aktueller students enrolled.
- Anzahl der students die generell enrolled sind/waren. Auch diejenigen, die schon gelöscht sind.
- Badges/Ratings die bisher ausgegeben wurden. Inklusive gelöschter students.
- Generelle pass/fail rate. Wieder: inklusive gelöschter user.
Dazu will ich einfache SQL Queries nutzen. Für das erste Beispiel habe ich folgenden SQL query:
SELECT COUNT(DISTINCT userid) FROM mdl_user_enrolments, mdl_user WHERE mdl_user.id = mdl_user_enrolments.userid AND deleted = 0;
Da ich die data manipulation API nutzen will habe ich folgenden code versucht.
$count = $DB->get_record_sql('SELECT COUNT(DISTINCT userid) FROM {user_enrolments}, {user} WHERE id = userid AND deleted = ?', array(0));
Ich bekomme einen Error wegen dem "ambigious field" id, da id sowohl in mdl_user_enrolments, als auch in mdl_user zu finden ist.
Meine Frage ist daher, wie ich tabellenmäßig unterscheiden kann, wie in mdl_user.id = mdl_user_enrolments.userid.
Vielen Dank,
Jonas