Frage
Ich baue eine Website-Anwendung mit Yii Framework.
Ich mag Modell verwenden, mit Abfrage wie folgt:
SELECT u.id, u.username, u.score, (SELECT COUNT(ownerId) FROM post p WHERE p.ownerId = u.id) AS totalPost
FROM users u
ORDER BY u.score DESC, totalPost DESC LIMIT 10
Bitte helfen Sie mir die Abfrage in Modelle in Yü-Framework zu konvertieren.
Lösung
Hier entsprechenden Kapitel von "The Definitive Guide To Yü" - http: // www.yiiframework.com/doc/guide/database.arr
Andere Tipps
Nun, ich glaube, Sie dies unter Verwendung einer Beziehung vereinfachen 'TotalPost' => Array (self :: STAT, 'Post', 'ownerID')
Überprüfen Sie CStatRelation für weitere Details. Beachten Sie, dass in dieser Klasse ist die ausgewählte Eigenschaft der statistische Ausdruck, die standardmäßig COUNT (*).
Außerdem können Sie Ihre Abfrage in User-Modell abgebildet werden, solange Sie einen öffentlichen $ TotalPost haben; in Modellklasse Benutzer.