Pregunta
construyo una aplicación web utilizando el framework Yii.
Quiero usar con el modelo de consulta como la siguiente:
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
Por favor me ayude a convertir la consulta en modelos de marco Yii.
Solución
Aquí está el capítulo relacionado de "La guía definitiva para Yu" - http: // www.yiiframework.com/doc/guide/database.arr
Otros consejos
Bueno, yo creo que se puede simplificar mediante el uso de una relación 'TotalPost' => array (self :: STAT, 'Post', 'OwnerId')
Comprobar CStatRelation para más detalles. Tenga en cuenta que en esta clase, la propiedad de selección es la expresión estadística que es según el recuento predeterminado (*).
Además, la consulta se puede mapear en modelo de usuario, siempre y cuando usted tiene un público $ TotalPost; en Usuario clase del modelo.