mysql - SQL足球比赛,如何从2组中选择淘汰赛阶段
问题描述
我正在尝试选择:
A 组第一队对阵 B 组第二名 B 组
第一队对阵 A 组第二名
我看到这个作业有很多问题,但不是针对 2 组
create table games
(
Home_team varchar(20),
Away_team varchar(20),
goals_for integer,
goals_againts integer,
group_stage varchar(20)
);
insert into games values ('Argentina','Nigeria',2,0,'A');
insert into games values ('Germany','Japan',1,1,'A');
insert into games values ('Japan','Argentina',0,1,'A');
insert into games values ('Germany','Nigeria',2,3,'A');
insert into games values ('Nigeria','Japan',0,0,'A');
insert into games values ('Germany','Argentina',1,0,'A');
insert into games values ('Brazil','Turkey',2,1,'B');
insert into games values ('China','Costa-Rica',0,2,'B');
insert into games values ('Brazil','China',4,0,'B');
insert into games values ('Costa-Rica','Turkey',1,1,'B');
insert into games values ('Costa-Rica','Brazil',2,5,'B');
insert into games values ('Turkey','China',3,0,'B');
select
Team,
sum(goalsfor) Scored,
sum(goalsagaints) Recived,
sum(goalsfor) - sum(goalsagaints) GoalDiff,
sum(
case when goalsfor > goalsagaints then 3 else 0 end
+ case when goalsfor = goalsagaints then 1 else 0 end
) Points
From (Select Home_team Team, home_goals goalsfor , away_goals goalsagaints from games
union all
Select Away_team, away_goals, home_goals from games ) My_standing
group by Team
order by Points desc, GoalDiff desc
现在我有了地位,我希望结果看起来像这样:
Argentina VS Turkey
Brazil VS Germany
解决方案
推荐阅读
- azure - 如何更改 Azure SQL 数据仓库和 Azure SQL 数据库的排序规则?
- java - Double.parseDouble 如何使我的应用程序崩溃?
- c# - 各种类如何只使用日志文件类的一个实例
- ajax - Laravel 发布 - 419 未知状态
- java - 如何使用fabric8 java客户端API在Kubernetes中执行滚动更新和部署回滚?
- swift - 无法调用非函数类型“UITableView?”的值 在 UITapGestureRecognizer 方法中
- powerapps - powerapps 中的日历事件
- python - 给定开始和停止时间,检查服务是否应该开启
- python - 如何根据标题行将数据帧拆分为多个数据帧
- autodesk-forge - 在 Forge Viewer 中限制轨道运动