gpt4 book ai didi

mysql - 按字典顺序选择球队对之间的比赛及其相对表现

转载 作者:行者123 更新时间:2023-11-29 09:34:50 25 4
gpt4 key购买 nike

我们有一个名为 Football_tournaments 的数据表。该表包含以下列:

  1. 主队
  2. 客队
  3. home_score(主队进球数)
  4. away_score(客队进球数)

我们需要编写 Select SQL 查询来按字典顺序打印数据集中存在的所有球队的对。我们需要输出包含球队名称、球队之间进行的比赛以及该对中第一支球队的胜率。

我无法编写 SQL 查询来对这些团队进行配对。

假设输出应如下所示:

澳大利亚英格兰 31%

英格兰威尔士 58% ...... 等等

最佳答案

基本上,您需要标准化数据,以便团队处于相同的顺序。在 MySQL 中,您可以使用 least()greatest() 来完成此操作。然后,只需聚合:

select team1, team2, count(*) as num_games, avg(is_win) as win_ratio
from (select least(home_team, away_team) as team1,
greatest(home_team, away_team) as team2,
(case when home_score > away_score and
home_team = least(home_team, away_team)
then 1
when away_score > home_score and
away_team = least(home_team, away_team)
then 1
else 0
end) as is_win
from t
) t
group by team1, team2;

关于mysql - 按字典顺序选择球队对之间的比赛及其相对表现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57851473/

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