繁体   English   中英

MySQL计数具有相同值的行

[英]MySQL count rows with same values

我一直在搜索,但没有找到我想要的东西。 这就是我所拥有的:

SELECT user_email, post_type
FROM `wp_users`
INNER JOIN `wp_posts` ON wp_users.id = wp_posts.post_author
WHERE post_type LIKE '%topic%'
OR post_type LIKE '%reply%

它带来了我所需要的:我需要一个查询,该查询向我显示用户的电子邮件以及他发出了多少主题和回复(BBPRESS)。

问题是它带来了所有这些,但没有告诉我用户做出了多少个主题/回复。 这就是它带来的: http : //i.stack.imgur.com/sMymU.png有什么方法可以添加第三列吗?

条件聚合:

SELECT user_email, 
       SUM(CASE WHEN post_type LIKE '%reply%' THEN 1 ELSE 0 END) AS Replies,
       SUM(CASE WHEN post_type LIKE '%topic%' THEN 1 ELSE 0 END) AS Topics
FROM `wp_users`
INNER JOIN `wp_posts` ON wp_users.id = wp_posts.post_author
WHERE post_type LIKE '%topic%' OR post_type LIKE '%reply%'
GROUP BY user_mail

尝试这个:

  SELECT user_email,
    SUM(CASE WHEN post_type LIKE '%topic%' THEN 1 ELSE 0 END) AS Topics, 
    SUM(CASE WHEN post_type LIKE '%reply%' THEN 1 ELSE 0 END ) AS Replies
  FROM `wp_users`
  INNER JOIN `wp_posts` ON wp_users.id = wp_posts.post_author
  GROUP BY user_email

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM