id | name 1 | aaa 2 | bbb 3 | ccc 4 | ccc 5 | aaa 6 | ccc 7 | ccc 8 | aaa 9 | bbb 10 | ccc 11 | aaa
я бы хотел стать:
name | count ccc | 5 aaa | 4 bbb | 2
счетчик заказов DESC
я сделал:
public function getCount() { $q = $this->createQuery('q') ->select('*') ->addSelect('count(q.name) as count') ->groupBy('q.name') ->orderBy('count DESC'); return $q->execute(); }
но если:
foreach ($count as $c) { echo $c; }
это покажет мне только первые данные в таблице.
как я могу это сделать?
Измените ваш цикл на это:
foreach ($count as $c) { echo $c->count . "\n"; }
редактировать: хороший способ отладки это изменить ваш возврат на
$q->fetchArray();
и затем в вашем цикле
print_r($c);