首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Postgresql获取球员的总比赛数

Postgresql获取球员的总比赛数
EN

Stack Overflow用户
提问于 2017-02-20 10:56:58
回答 1查看 25关注 0票数 0

我得到了以下Postgres查询:

代码语言:javascript
复制
SELECT p_id as player_id, name as player_name
FROM Players
LEFT OUTER JOIN matches
ON Players.p_id = matches.player1 or Players.p_id = matches.player2
;

并返回以下内容

代码语言:javascript
复制
 player_id |    player_name
-----------+-------------------
         1 | Twilight Sparkle
         1 | Twilight Sparkle
         2 | Fluttershy
         3 | Applejack
         3 | Applejack
         4 | Pinkie Pie
         5 | "Rarity
         5 | "Rarity
         6 | Rainbow Dash
         7 | Princess Celestia
         7 | Princess Celestia
         8 | Princess Luna

如何才能得到一个包含唯一p_id的表,其中包含每个p_id的名称和p_id所在的总行?

代码语言:javascript
复制
player_id |    player_name     |  total_matches
-----------+-------------------+------
         1 | Twilight Sparkle  | 2
         2 | Fluttershy        | 1
         3 | Applejack         | 1
         4 | Pinkie Pie        | 1
         5 | "Rarity           | 2
         6 | Rainbow Dash      | 1
         7 | Princess Celestia | 2
         8 | Princess Luna     | 1
EN

回答 1

Stack Overflow用户

发布于 2017-02-20 10:59:31

您可以使用group子句来实现:

代码语言:javascript
复制
SELECT p_id as player_id, name as player_name, count(*) as total_matches
FROM Players
LEFT OUTER JOIN matches
ON Players.p_id = matches.player1 or Players.p_id = matches.player2
GROUP BY name
;
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/42335758

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档