Custom Statistik API - Problem mit data manipulation API

Custom Statistik API - Problem mit data manipulation API

von Jonas Kahler -
Anzahl Antworten: 1
Hallo zusammen,

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

Mittelwert:  -
Als Antwort auf Jonas Kahler

Re: Custom Statistik API - Problem mit data manipulation API

von Michael Niedermair -

Hallo Jonas,

z.B. mit dem alias

SELECT a.id AS aid, b.id AS bid FROM tabelle1 a, tabelle2 b WHERE a.id=.....

Gruß

Michael