- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我的数据库中有 2 个表,如下所示:
下面是团队表:
id tname poule
1 ZF Eger heren1A
2 Pro Recco heren1A
3 Sintez Kazan heren1A
4 Szolnoki VSE heren1A
5 Sintez Kazan 2 heren1B
6 Szolnoki VSE 2 heren1B
下面是游戏表:
id date hteam ateam hscore ascore gamefield poule played
1 2008-01-01 20:00:00 1 2 0 0 Veld 1 heren1A 0
2 2008-01-01 20:00:00 3 4 10 8 Veld 2 heren1A 1
下面的代码对数据库进行 SQL 查询并输出联赛排名。
SELECT poule AS Poule,
tname AS Team,
Sum(WG) AS WG,
Sum(W) AS W,
Sum(G) AS G,
Sum(V) AS V,
SUM(DV) as DV,
SUM(DT) AS DT,
SUM(S) AS S,
SUM(P) AS P
FROM (
SELECT hteam
Team,
IF(played = 1,1,0) WG,
IF(hscore > ascore,1,0) W,
IF(hscore = ascore,1,0) G,
IF(hscore < ascore,1,0) V,
hscore DV,
ascore DT,
hscore-ascore S,
CASE WHEN hscore > ascore THEN 3 WHEN hscore = ascore THEN 1 ELSE 0 END P
FROM games
WHERE played = 1
AND poule = ? OR played = 1
AND poule = ?
UNION ALL
SELECT ateam,
1,
IF(hscore < ascore,1,0),
IF(hscore = ascore,1,0),
IF(hscore > ascore,1,0),
ascore,
hscore,
ascore-hscore S,
CASE WHEN hscore < ascore THEN 3 WHEN hscore = ascore THEN 1 ELSE 0 END
FROM games
WHERE played = 1
AND poule = ? OR played = 1
AND poule = ?
) AS tot
JOIN teams t
ON tot.Team=t.id
GROUP BY Team
ORDER BY SUM(P) DESC, s DESC
我遇到的问题是:
没有参加比赛的球队不会被选中,但我仍然希望他们被选中,因为我需要显示完整的球队,即使没有比赛。如何更改我的查询,以便在未进行任何比赛时也显示联赛排名?
最佳答案
您应该使用team
作为 anchor ,并使用LEFT JOIN
与您的统计数据:
SELECT
t.poule,
t.tname AS Team,
IFNULL(Sum(WG), 0) AS WG,
IFNULL(Sum(W) , 0) AS W,
IFNULL(Sum(G) , 0) AS G,
IFNULL(Sum(V) , 0) AS V,
IFNULL(SUM(DV), 0) as DV,
IFNULL(SUM(DT), 0) AS DT,
IFNULL(SUM(S) , 0) AS S,
IFNULL(SUM(P) , 0) AS P
FROM teams t
LEFT JOIN (
SELECT hteam
Team,
IF(played = 1,1,0) WG,
IF(hscore > ascore,1,0) W,
IF(hscore = ascore,1,0) G,
IF(hscore < ascore,1,0) V,
hscore DV,
ascore DT,
hscore-ascore S,
CASE WHEN hscore > ascore THEN 3 WHEN hscore = ascore THEN 1 ELSE 0 END P
FROM games
WHERE played = 1
AND poule = ? OR played = 1
AND poule = ?
UNION ALL
SELECT ateam,
1,
IF(hscore < ascore,1,0),
IF(hscore = ascore,1,0),
IF(hscore > ascore,1,0),
ascore,
hscore,
ascore-hscore S,
CASE WHEN hscore < ascore THEN 3 WHEN hscore = ascore THEN 1 ELSE 0 END
FROM games
WHERE played = 1
AND poule = ? OR played = 1
AND poule = ?
) AS tot ON tot.Team=t.id
GROUP BY t.poule,t.tname
ORDER BY SUM(P) DESC, s DESC
这样,所有团队都会返回,包括那些没有统计数据的团队。
结果*
heren1A Sintez Kazan 1 1 0 0 10 8 2 3
heren1A Szolnoki VSE 1 0 0 1 8 10 -2 0
heren1A ZF Eger 0 0 0 0 0 0 0 0
heren1A Pro Recco 0 0 0 0 0 0 0 0
heren1B Sintez Kazan 2 0 0 0 0 0 0 0 0
heren1B Szolnoki VSE 2 0 0 0 0 0 0 0 0
关于MySQL 排行榜,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31983330/
我的数据库中有 2 个表,如下所示: 下面是团队表: id tname poule 1 ZF Eger heren1A 2 Pro Recco he
这期看标题已经能猜到了,主要讲的是成绩排行功能,还有对应的文件读写。那么废话不多说,让我们有请今天的主角...的设计稿: 那么主角是何方神圣呢?当然是图中的大框框—
我正在尝试在我的应用程序中实现 GameCenter。这是为了向我显示 GameCenter LeaderBoard,但它向我显示:没有项目。 -(IBAction) ShowLeader{ GKGa
这个问题在这里已经有了答案: MySQL - Get row number on select (6 个答案) 关闭 9 年前。 我有一个包含以下数据的表 USER_ID | REVENUE 1
我有一个排行榜,我想给每一行一个排名,代表他们有多少分。这是我到目前为止的代码。它工作正常,但是当两个玩家拥有相同数量的点数时,排名相同,例如,如果 DB 中有 2/2 的玩家都拥有 100 点,则他
我正在为即将到来的世界杯做一个小项目。我正在建立一个基于国家队小组的名册/排行榜/记分牌。我们的想法是获得有关小组内或淘汰赛阶段所有即将到来的比赛的信息(比分、比赛时间、比赛统计数据等)。目前我被数据
如何设置工具提示显示在所有元素之上?我需要分配坐标,以便工具提示不会关闭图表,但顶部 block 会关闭工具提示。 http://joxi.ru/L21PnlgTRPVxEm http://joxi.
我用 C# 创建了一个简单的排行榜应用程序。但是我注意到拉动和排序分数的问题。假设我在一个排序集 (95、12、60、50、66) 上运行 ZREVRANGE,然后它将按 95、66、60、50、12
我已经为我的应用设置了 google play 游戏服务并添加了排行榜。我在代码中添加了游戏 ID 和排行榜 ID。现在应用程序和游戏都已发布。 用于启动排行榜的代码 if(mclient.isCo
我目前有一些代码可以检测您在特定秒数内可以点击多少次 react 。 我正在尝试为每个人制作一个排行榜,以最高 CPS(每秒点击次数)保存前 10 名。否则代码工作完美,但我被困在排行榜上。 这是我的
当前是否有办法从网络读取 GameCenter 排行榜数据? 我正在寻找一种只读方式来在配套网站上显示排行榜。我不需要发布分数或以其他方式操作设备上的排行榜。 我感觉答案是否定的,我需要使用 Open
我正在尝试使用该按钮来拉出单个 View Gamecenter 排行榜,但无法真正弄清楚如何。我尝试了苹果论坛,但没有帮助,所以我来到了这里。帮助表示赞赏 最佳答案 将呈现 GKGameCenterV
我有一个包含以下列的表格: +----+--------+-----+------+-------+-------+-------+ | Id | Member | End | Done | Righ
我正在尝试用 MySQL 数据制作一个排行榜。 MySQL数据来自minecraft服务器上的插件。因此,我将插件的数据链接到名为 iConomy 的 MySQL 数据库 在数据库中我制作了 2 个
我有一些代码,可以计算用户在排行榜上的分数和位置,然后根据他们的分数/分数按降序显示它们。 现在我已经完成了编号,所以它看起来像这样 1 2 2 3 3 3 4 但是我想让这个更正确并根据之前的数字跳
关闭。这个问题需要更多focused .它目前不接受答案。 想改进这个问题吗? 更新问题,使其只关注一个问题 editing this post . 关闭 7 年前。 Improve this qu
我对 Couchbase 数据库非常陌生,并且需要在我们的项目中构建排行榜解决方案。理想情况下,它应该像内存排序集一样工作:添加的每个项目为 O(log(N)),O(log(N)+M),其中 N 是排
我目前正在开发这个应用程序,用于跟踪每日运行并显示排行榜。这是针对一个类的,所以我不一定要寻找代码,只是关于如何进行的一些想法。无论如何,应用程序当前将获取输入信息(从底部文本字段),创建 RaceE
现在我以这种方式显示 SwarmConnect 在线排行榜: public void showLeaderboard() { SwarmLeaderboard.showLeaderboard(
是否可以轻松实现并使用 Javascript 完成,我不确定但是.. 如下面的代码所示,我有 5 个玩家,每个玩家的分数都不同。我正在寻找代码,以便它会根据玩家的分数自动重新列出玩家。理想情况下,如果
我是一名优秀的程序员,十分优秀!