微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

php-GROUP BY无法正确计算

我有这句话:

SELECT COUNT(ID) AS numberVote, AWARD_ID, NOmineE_ID, VoteR_ID, MULTI_CODE 
FROM b_awards_Vote 
WHERE AWARD_ID = 8 
GROUP BY MULTI_CODE

我的桌子看起来像这样:

ID   |  AWARD_ID  | NOmineE_ID  | VoteR_ID  | MUTLI_CODE
1    |  8         | 3           | 1         | 4837
2    |  8         | 4           | 1         | 4837
3    |  8         | 5           | 1         | 4837

但是在PHP中返回:

$numberVote = $row['numberVote'];

该语句返回3.这是我想要的详细信息:

>所有具有相同MULTI_CODE的条目实际上都是1票.
>因此,上表中的这个示例我想算作1票.在下表中:

ID   |  AWARD_ID  | NOmineE_ID  | VoteR_ID  | MUTLI_CODE
1    |  8         | 3           | 1         | 4837
2    |  8         | 4           | 1         | 4837
3    |  8         | 5           | 1         | 4837
4    |  8         | 4           | 3         | 7480
5    |  8         | 5           | 3         | 7480

>我希望此计数返回:2,因为有两个不同的MULTI_CODE,因为有2个不同的投票组.

解决方法:

查询将计算您拥有的MUTLI_CODE组的数量

  SELECT  COUNT( distinct MULTI_CODE) AS NumOfGroups ,ID AS numberVote, AWARD_ID, NOmineE_ID, VoteR_ID, MULTI_CODE 
  FROM b_awards_Vote 
  WHERE AWARD_ID = 8 

参见SQLFiddle作为参考

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐