Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/284.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 按计算不正确分组_Php_Mysql - Fatal编程技术网

Php 按计算不正确分组

Php 按计算不正确分组,php,mysql,Php,Mysql,我有以下声明: 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

我有以下声明:

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_代码的条目实际上都有一票
  • 因此,在上表中的这个例子中,我想计算为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_代码,因为有两组不同的投票


  • 此查询将统计您拥有的
    MUTLI\u 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 
    

    请参见参考

    为什么使用count(ID)并提供用于显示此数据的php代码,因为您仅使用MULTI_代码字段进行分组,虽然被提名者ID字段有不同的值。不太清楚您想要或期望的输出返回3,因为您是按
    MUTLI_-code
    分组的,在您的示例中,当相同的
    MUTLI_-code
    时有3行。抱歉,我对其进行了一些编辑。我想将MULTI_代码分组为1票。一般来说,如果在SELECT中有一个未聚合的列,那么该列也应该出现在group BY中。同样,如果在“选择”中有聚合列,则该列不应出现在“分组依据”中!