2014-06-15 82 views
-1

我正在尋找使用Zend db的正確語法來顯示按計數排序的表。例如,我的MySQL表看起來像這樣:Zend db Mysql按計數排序

 
Users   Description 
1    topic1 
1    topic2 
2    topic3 

我希望輸出的樣子:

 
User 1 (2 descriptions) 
User 2 (1 description) 

回答

1

你正在尋找的原始查詢

SELECT users, COUNT(*) count 
    FROM table1 
GROUP BY users 
ORDER BY COUNT(*) DESC 

輸出:

 
| USERS | COUNT | 
|-------|-------| 
|  1 |  2 | 
|  2 |  1 | 

這裏是SQLFiddle演示

我不是Zend的專家,但您的查詢可能看起來的

$select = $db->select() 
      ->from('table1', array('users', 'count' => '(COUNT(*))')) 
      ->group('users') 
      ->order('(COUNT(*)) DESC'); 
$stmt = $db->query($select); 
$result = $stmt->fetchAll(); 
字裏行間的東西