PHP从mysql表中获取最大数

标签 php mysql

我已经统计了投票给某个候选人的选民人数,我想显示哪一个获得了最高的投票数。我试图将它们存储在变量中,以便我可以使用 max() 方法,但我收到错误“未定义”。请提供任何帮助

  <?php 
 $query="select count(*) as total from voting Where ca_id=1";
  //ca_id is the candidate id that voter choose
 $result = mysql_query($query);
 $row = mysql_fetch_assoc($result);
 echo"$row[total]<br>";


 $query="select count(*) as total2 from voting Where ca_id=2";
 $result = mysql_query($query);
 $row2 = mysql_fetch_assoc($result);
 echo"$row2[total2]<br>";

 $query="select count(*) as total3 from voting Where ca_id=3";
 $result = mysql_query($query);
 $row3 = mysql_fetch_assoc($result);
 echo"$row3[total3]<br>";

 $query="select count(*) as total4 from voting Where ca_id=5";
 $result = mysql_query($query);
 $row4 = mysql_fetch_assoc($result);
 echo"$row4[total4]<br>";



?>

最佳答案

您不需要为此执行四个查询。您可以只使用一个查询。在你的情况下,你可以这样做:

select ca_id, count(*) as counter from voting group by ca_id order by counter desc

你可以通过一个查询得到你的结果

如前所述,在这种情况下,对于与数据库相关的调用,PDO 是更好的选择

关于PHP从mysql表中获取最大数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16672098/

相关文章:

mysql - MySQL 中的默认排序顺序(ALTER TABLE ... ORDER BY ...;)

php - 将数据库中的值放入 '$string' 中

PHP函数设计: passing parameters

php - 使 while 循环变量成为全局变量

MySQL NOT NULL 插入行为

mysql如何在where子句中使用相同的子查询更新表

javascript - 根据数组的长度创建报告

php - Prestashop 1.7 Hook 操作CustomerAccountAdd 未触发

php - MySQL 上的多个 INSERT/UPDATE

java - 如何将 MySQL 数据库中的 id 解析为变量