0

特定の候補者に投票した有権者の数を数えました。投票数が最も多かった候補者を表示したいと思います。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>";



?>
4

4 に答える 4

3
SELECT count(1) co, ca_id FROM voting GROUP BY ca_id ORDER BY co DESC LIMIT 5
于 2013-05-21T14:10:14.897 に答える
3

このために 4 つのクエリを実行する必要はありません。単一のクエリを使用できます。あなたの場合、次のことができます:

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

そして、単一のクエリで結果を取得できます

前述のように、この場合、データベース関連の呼び出しには PDO の方が適しています。

于 2013-05-21T14:11:12.447 に答える