加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

mysql – 忽略COUNT中的重复行

发布时间:2020-12-11 23:43:36 所属栏目:MySql教程 来源:网络整理
导读:以下查询给出exp_judging表中有多少行的计数,字段pre中的值为1,其中exp_submissions中也有一个匹配列,member_group为5 SELECT COUNT(*) AS count_result FROM exp_judging AS jud LEFT JOIN exp_submissions AS sub ON jud.rel_id = sub.id WHERE jud.pre =

以下查询给出exp_judging表中有多少行的计数,字段pre中的值为1,其中exp_submissions中也有一个匹配列,member_group为5

SELECT COUNT(*) AS count_result
  FROM exp_judging AS jud
  LEFT JOIN exp_submissions AS sub ON jud.rel_id = sub.id 
  WHERE jud.pre = 1
        AND sub.member_group = 5

这非常有效.但是,将来在’exp_judging’表中会有多行具有相同的’rel_id’.

如何确保每行中只有一行被计算在内?

我尝试将GROUP BY添加到最后,但它只显示1个结果,而不是之前的4个结果. (还没有重复)

GROUP BY jud.rel_id

编辑:

尝试了以下,但仍然只是显示1:

SELECT COUNT(DISTINCT jud.rel_id) AS count_result
FROM exp_judging AS jud
LEFT JOIN exp_submissions AS sub ON jud.rel_id = sub.id 
WHERE jud.pre = 1
AND sub.member_group = $member_group
GROUP BY jud.rel_id
最佳答案 使用COUNT(DISTINCT rel_id)代替COUNT(*).

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读