gpt4 book ai didi

php - mysql Sum() 和占总和的百分比

转载 作者:行者123 更新时间:2023-11-29 11:35:28 27 4
gpt4 key购买 nike

我有一个查询运行良好,结果如何,我希望能够计算票数总和并获得百分比。我想我必须先得到总票数才能计算百分比。以下是我的代码的一部分。

    <?php
$query = "SELECT candidates.CandidateName, candidates.CandidateVotes, candidates.Party, mainrace.MainRaceName, race.RaceName
FROM candidates
JOIN race ON race.RaceID = candidates.RaceID
JOIN mainrace ON mainrace.MainID = candidates.MainID
WHERE candidates.RaceID = 9";

$result = mysql_query($query) or die(mysql_error());

//Loop through db fields.

for($i=0; $row = mysql_fetch_array($result); $i++){
?>


<tr>
<td>Perentage</td>
<td><?php echo $row['CandidateName']; ?></td>
<td><?php echo $row['CandidateVotes']; ?></td>

</tr>
<?php
}
?>
<tr>
<td></td>
<td>Total Votes:</td>
<td>Sum totals</td>

</tr>

此时我希望能够在另一个查询之前运行查询并获取

query = "SELECT sum(candidates.CandidateName) FROM candidates WHERE candidates.RaceID =9";

然后我可以计算$Percentage= $CadidateVotes/100;

enter image description here

感谢您抽出宝贵的时间,希望您能给我答案。真诚的

最佳答案

您有多种选择。

首先,您可以运行查询来获取总票数,然后您可以在处理查询结果时将候选人的得票数除以得到百分比。

或者您可以先将查询结果处理成数组,同时将总票数相加,然后再处理该数组。此选项需要更多代码,但速度应该更快,因为您不需要查询数据库两次。

$candidates=[];
$total_votes=0;
for($i=0; $row = mysql_fetch_array($result); $i++) {
$candidates[$row['name']]['votes'] = $row['votes'];
$total_votes += $row['votes'];
}

foreach ($candidates as $name => $votes) {
$percent = $votes / $total_votes;
?>

关于php - mysql Sum() 和占总和的百分比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36665419/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com