如何在MySQL中创建count不为零的选择

时间:2013-09-17 18:59:12

标签: mysql zend-framework

这就是我想要做的。我正在尝试从论坛视图表中选择有5条或更多记录的所有user_id。这很容易(这是Zend):

$objCountSelect = $db->select()
    ->from(array('v' =>'tbl_forum_views'), 'COUNT(*) AS count')
    ->where('u.id = v.user_id')
    ->having('COUNT(user_id) >= ?', 5)
;

但我需要以某种方式将此连接到我的用户表。如果计数大于5,我不想返回结果。我试过这个:

$objSelect = $db->select()
     ->from(array('u' => 'tbl_users'), array(
          'id as u_id',
          'count' => new Zend_Db_Expr('(' . $objCountSelect . ')'),
       ))
;

但是,它返回每个用户的记录,如果小于或等于5,则将计数留空。如何排除计数小于或等于5的行?

1 个答案:

答案 0 :(得分:0)

我想出来了,但想要发布答案以防其他人遇到同样的问题。我补充说:

->having('count > 0')

到第二个选择,现在它可以工作。