我想在另外两张桌子中选择单个玩家的总出场次数。
这是我的数据库结构(postgres):
Table: Player
id integer
Table: World Champions
id integer
year date
player_id integer
Table: European Champions
id integer
year date
player_id integer
表格播放器上的id也可以在表格“World Champions”和“European Champions”(player_id)中找到。 我想选择如下数据:
player.id worldChampionTitles europeanChampionTitles
1 3 4
2 1 0
3 0 0
4 1 1
但我不知道如何编写我的选择查询。
答案 0 :(得分:1)
子查询很简单:
SELECT p.id
, (SELECT count(*) FROM "World Champions" AS c WHERE c.player_id = p.id)
+ (SELECT count(*) FROM "European Champions" AS c WHERE c.player_id = p.id)
FROM Player AS p