- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在尝试为下个月将参加的高尔夫锦标赛创建一个排行榜,但我无法弄清楚如何使其发挥作用。
我有一个分数输入页面,正在转储到我的 SQL 数据库中,该页面工作正常(所有分数/姓名/总计都会进入),[ 1 ] 然后我按照我希望在排行榜上显示的方式填充分数,这也很好用。
我什至将它们GROUP BY
(ing)在一起,这样就不会有重复[2]。
我遇到的问题是我无法使用GROUP BY
将总计列添加在一起。我曾多次尝试在查询中执行 SUM(total)
操作,但它总是删除总计[3]。 here is what it looks like (上面的每个数字都是图像)它没有显示刚刚填充的任何分数。
这是我当前的查询:
$servername = 'mysql.thisplace.com';
$username = 'name';
$password = 'pword';
$dbname = 'dbase';
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed " . $conn->connect_error);
}
$sql = "SELECT name, sum(total) FROM matchplay GROUP BY name ORDER BY -total DESC";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
// output data of each row
while($row = mysqli_fetch_assoc($result)) {
echo "Name " . $row["name"] . " Score " . $row["total"]. "<br>";
}
} else {
echo "0 results";
}
mysqli_close($conn);
?>
我们所有人之间将进行 4 轮比赛,所以这是我的问题:
我如何将 16 个不同人的 4 轮加起来并显示出领先者?最好的查询是什么?对于 SUM()
问题,我是否在查询中做了错误的事情来实现这种情况?
任何帮助都会很棒!
最佳答案
问题似乎与您使用(而不是不使用)列的别名有关。您对列名称中的 total
和作为各个分数总和的 total
感到困惑。因此,为总和列创建一个新的别名
作为Score
并按别名排序。这样,SQL 就不会混淆总和和列名。
将您的查询修改为
SELECT name, sum(total) as Score FROM matchplay GROUP BY name ORDER BY Score desc
;
上面的查询似乎可以解决问题并返回所需的结果..!!
除此之外,将 while 循环修改为
while($row = mysqli_fetch_assoc($result)) {
echo "Name " . $row["name"] . " Score " . $row["Score"]. "<br>";
}
工作 SQLFiddle here
关于php - 创建高尔夫锦标赛排行榜,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31911431/
不幸的是,这可能不是一个有效的 Code-Golf 问题,因为它可能只是 Javascript;然而,自从 这可能是唯一在现实世界中有用的 Code Golf 比赛我将继续发布它。 Google An
如何使用powershell查找下一个工作日? 最佳答案 嗯,我的手机允许我设置工作日,但 Windows/.NET 不会,所以我假设周一到周五。 注意:由于问题包括“高尔夫”,我正在打这个问题,即尝
最短的 Perl 单行代码是什么,它打印出硬编码的 2 位小数的前 9 次幂(例如,.37),每行各占一行? 输出看起来像这样: 1 0.37 0.1369 [etc.] 官方 Perl 高尔夫规则:
我有一个看起来像这样的列表列表: [['Tom', 'Dick'], ['Harry', 'John', 'Mike'], ['Bob']] 我想把它变成一个字典,其中每个键都是一个名称,每个值都是一
我是一名优秀的程序员,十分优秀!