Lehre Unterabfrage in InnerJoin
habe ich funktionale Abfrage in MySql:
select t.won,e.etot, s.username,s.country,r.points,r.rank FROM sf_guard_user s
INNER JOIN marks r ON r.user_id = s.id
inner join (select t.user_id,count(t.user_id)as won from topper t group by t.user_id) t on t.user_id=s.id
inner join (select e.user_id,count(e.user_id)as etot from exams e group by e.user_id) e on e.user_id=s.id
ORDER BY r.rank asc
schrieb ich Lehre-code in sfGuardUserTable Klasse:
$q= $this->createQuery('u');
$wq =$q->createSubquery()
->select('t.user_id,count(t.user_id) won')
->from('Topper t')
->groupBy('t.user_id');
$dq = $q->createSubquery()
->select('e.user_id,count(e.user_id) etot')
->from('Exams d')
->groupBy('d.user_id');
$q->select(' t1.won, e1.dtot, u.username,u.country,r.points,r.rank')
->innerJoin ('u.Marks r ON r.user_id = u.id')
->innerJoin ('u.('.$wq->getDql().') t1 on t1.user_id=u.id')
->innerJoin ('u.'.$dq->getDql().' e1 on e1.user_id=u.id')
->orderBy('r.rank asc');
//echo $q->getSql();
return $q;
es gibt Fehler nicht finden Konnte-Klasse WÄHLEN 🙁 bitte helfen Sie mir. Vielen Dank im Voraus.
Warum ist es notwendig zu abstrahieren, die Abfrage so? Nur geben Sie es aus, wie normale Menschen.
U R DOIN' SIE FALSCH. Benötigen Sie keine Lehre für solche Abfragen (
tor Valamo : könnten Sie mich, wie Sie schreiben, wie normal. ich meine, das ist der einzige Weg, ich weiß das, weil ich dun ausführen wollen mehrere Anfragen für die gleiche Aufgabe.
U R DOIN' SIE FALSCH. Benötigen Sie keine Lehre für solche Abfragen (
$q->select(' t1.won, e1.dtot, u.username,u.country,r.points,r.rank')
).tor Valamo : könnten Sie mich, wie Sie schreiben, wie normal. ich meine, das ist der einzige Weg, ich weiß das, weil ich dun ausführen wollen mehrere Anfragen für die gleiche Aufgabe.
InformationsquelleAutor S.Sid | 2010-01-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
ich versuchte, Sie zu führen meine benutzerdefinierte Abfrage direkt durch Lehre Zeile Sql-Abfrage-option und Ihre Arbeit 🙂
ich liebte es zu teilen hier :
weitere Hilfe Lesen.
InformationsquelleAutor S.Sid