【发布时间】:2020-05-08 20:49:10
【问题描述】:
我想计算PL中每支球队的积分
我有两张桌子
T1
---------------------
TEAM ID || TEAM NAME
---------------------
01 || Liverpool
02 || Man City
---------------------
以 t2 为例
----------------------------------------------------------------
MATCH ID || HOME TEAM || AWAY TEAM || HOME GOALS || AWAY GOALS|
-----------------------------------------------------------------
30 || Liverpool || Man City || 1 || 0
-----------------------------------------------------------------
计算积分 现在对于每场比赛,如果一支球队的进球数大于另一支球队,他赢了,他得 3 分,输家得 0 分 但是,如果他们每个人的进球数相同,那么他们每个人都只得 1 分。
新表应该是这样的
-----------------------------------
Team ID || Team Name || Team Points
------------------------------------
01 || Liverpool || 28
02 || Man City || 22
------------------------------------
【问题讨论】:
-
您的第二个表应该存储
TEAM ID用于AWAY TEAM和HOME TEAM而不是团队名称,以便可以轻松地加入表 1。 -
是的,但事实并非如此。看,我试图在内部连接中将 t2 分解为两个单独的表(t2 H 代表主机,t2 G 代表客人),重点是 :: 是否可以求和(H.HomeGoals> G.GuestGoals 然后为 3 时的情况否则 0) 等等 ..??恐怕不对
标签: sql postgresql