Zend framework groupe par

Je suis en train de faire un groupe à l'aide de Zend framework. Voici mon code:

$table = new TableClass();
$select = $table->select();
$select->from ("table", array("date", "column1" => "sum(column1)"));
$select->group ( array ("date") );
$results = $table->fetchAll ($select);
$result = $results[0];
$date = $result->date;
$column1 = $result->column1;

TableClass s'étend 'Zend_Db_Table_Abstract'.

Je peux voir la requête en regardant le mysql query log. La requête est bien formé - colonne1 est nommée dans la requête et les résultats semblent corrects si j'exécute la requête mysql workbench.

Je ne peut pas accéder aux données en "colonne1' - j'ai toujours cette exception:

Uncaught exception 'Zend_Db_Table_Row_Exception' with message 'colonne Spécifiée "colonne1" n'est pas dans la ligne'

Je peux toutefois accéder à la colonne de date sans problème.

J'ai essayé:

  • accès aux colonnes par des index de tableau:
    $result[0]
    mais vous obtenez une exception (ne peut pas accéder à des colonnes de l'index).

  • pas à l'aide d'un alias de colonne:
    $select->from ("table", array("date", "somme(colonne1)"));
    $colonne1 = $result["somme(colonne1)"];
    mais vous obtenez une exception (qui n'colonne "somme(colonne1)").

  • lancer dans une Zend_Db_Expr:
    "colonne1" => nouvelle Zend_Db_Expr ( "la somme(colonne1)" )
    mais cela ne l'aide pas.

Quelques autres exemples que j'ai vu suggèrent l'utilisation de la colonne des noms sans les fonctions d'agrégation, c'est à dire. "colonne1" au lieu de "sum(colonne1)" mais ça ne semble pas à moi d'être la réponse de la requête n'a pas toutes les fonctions d'agrégation en elle de sorte que mysql ne savez pas quoi faire avec elle.

Toute aide appréciée.

InformationsquelleAutor | 2010-06-19