CakePHP 3 Premières Requêtes SQL

Je suis en utilisant CakePHP 3, j'ai besoin d'exécuter un raw SQL de la requête sur plusieurs tables. Dans CakePHP 2, ce qui pourrait être fait à l'aide de la méthode query() sur un modèle ( $this->Messages->query("select..") ).

J'ai besoin de la méthode qui me permet d'exécuter une requête SQL dans CakePHP 3. Voici l'extrait de code que j'utilise:

$aumTable = TableRegistry::get('Messages');
$sql = "SELECT (SELECT COUNT(*) FROM `messages`) AS `Total_Count`,
        (SELECT COUNT(*) FROM `messages_output`) AS `Total_Output_Count`,
        (SELECT COUNT(*) FROM `messages_output` WHERE `is_success`=1) AS `Total_Successful_Output_Count`,
        (SELECT COUNT(*) FROM `messages_output` WHERE `is_success`=0) AS `Total_Error_Output_Count`,
        (SELECT COUNT(*) FROM `users`) AS `Total_User_Count`;";

//to run this raw SQL query what method should i use? query() doesn't work..
//$result = $aumTable->query($sql); ??
//$result = $aumTable->sql($sql); ??

Si vous pouvez fournir des liens vers CakePHP 3 documentation du modèle où je peux trouver cette info, ça serait aussi utile. J'ai essayé de chercher sur google, mais ne pouvait trouver des questions liées à CakePHP 2.

book.cakephp.org/3.0/en/orm/... > book.cakephp.org/3.0/en/orm/...
Je vous remercie. La réponse est: nous avons besoin d'utiliser ConnectionManager au lieu de TableRegistry pour exécuter des premières requêtes sql.

OriginalL'auteur Ananth | 2014-10-11