我有一个包含测验名称和分数的表格
我一直在寻找如何使用 sql 和 php 进行 AVG(Score)。我想不通。我要显示平均分数。所有数据应显示在表格中。
Quiz Score
Php 88
HTML 76
CCSS 78
Total 80
这是我的代码:
<?php
$username = "root";
$password = "";
$hostname = "localhost";
$database = "basketball_database";
$con = mysql_connect($hostname, $username, $password)
or die("Unable to connect to MYsql");
//echo "Connected to mysql<br>";
mysql_select_db("$database")
or die("Could not select Basketball_database");
//echo "Connected to database";
echo "<div align=center>";
//select from database
$mysql = "SELECT quiz_name, AVG(score) FROM `thompkins@yahoo.com`";
$mydata = mysql_query($mysql,$con);
echo "<h2> Current Athletes </h2>";
//create table
echo "<table border=1
<tr>
<th>Quiz Name</th>
<th>Score</th>
</tr>";
while($records = mysql_fetch_array($mydata)){
echo "<tr>";
echo "<td>".$records['quiz_name']."</td>";
echo "<td>".$records['score']."</td>";
echo "</tr>";
}
// I want to display Total Score here
echo "<tr>";
echo "<td> Total Score: </td>";
echo "<td>" . $records['score']. "</td>";
echo "<tr>";
echo "</div>";
echo "</table>";
?>
最佳答案
您需要一个别名
AVG(score) as score
然后在 PHP 中使用它作为
$records['score']
平均值通常适用于所有列数据或具有多个值的列。
这是一个demo
如果每列只有一个值,即一个测验名称和一个分数,则无需在查询中使用 AVG(),因为它将返回相同的值。
但是,如果您需要集体数据的平均值,您可以对所有数据使用 avg(),如演示中所示,或者可以通过 PHP 代码来完成。
关于php - 求和并显示总分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23328440/