您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

mysql计数不能正常工作?

mysql计数不能正常工作?

您需要将SELECT子句中除之外的所有列添加c.USER_IDGROUP BY子句中,如下所示:

group by c.ID, c.otherfields, l.title,..

我认为以下将正常工作:

SELECT count(c.USER_ID) as total_commments_user , 
       c.*, u.NAME, l.TITLE as LINK_TITLE, u.AUTH_IMG
FROM `PLD_COMMENT` c 
left outer join `PLD_USER` u ON (u.ID = c.USER_ID) 
left outer join `PLD_LINK` l ON (l.ID = c.ITEM_ID) 
group by c.ITEM_ID, c.USER_ID
ORDER BY c.USER_ID, l.ID

如果您具有以下示例数据:

ID   STATUS   TITLE

1 1 title1 2 2 title2

ID     NAME

8 Mahmoud 9 Ahmed

ID   ITEM_ID USER_ID   STATUS

4 1 8 1 5 1 8 1 6 1 8 1 7 2 8 2 8 2 8 2 9 1 9 1 10 1 9 1

然后,上一个查询将为您提供每个用户和每个项目的评论计数,如下所示:

total_commments_user  ID  ITEM_ID   USER_ID   Name
         3            4      1         8     Mahmoud
         2            7      2         8     Mahmoud
         2            9      1         9      Ahmed

如果要获取所有项目的每个用户评论数,则只需要按进行分组USER_ID,那么您将获得:

total_commments_user  ID  ITEM_ID   USER_ID   Name  
         5            4      1         8     Mahmoud
         3            9      1         9      Ahmed

然后,您可以按状态或其他条件进行过滤。

MySQL 2022/1/1 18:53:03 有388人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶