我想将nba匹配(nba database)
的结果归纳为一个全新的列,例如:如果puntos_local > puntos_visitante
,列puntos
将增加3
。如果结果相等,则仅求和1
SELECT `equipo_local`,
(case
when `puntos_local` > `puntos_visitante`
then puntos=puntos+3
when `puntos_local` = `puntos_visitante`
then puntos=puntos+1
end) AS puntos
FROM `partidos`
WHERE temporada LIKE "07/08"
-- GROUP BY `equipo_local`
ORDER BY puntos DESC, partidos.equipo_local
我也尝试过类似的事情:
SELECT `equipo_local`,
Sum(Case ( When `puntos_local` > `puntos_visitante` Then puntos=puntos+3 Else 0 End)) As puntos
,Sum(Case ( When `puntos_local` = `puntos_visitante` Then puntos=puntos+1 Else 0 End)) As puntos
FROM `partidos`
WHERE temporada LIKE "07/08"
-- GROUP BY `equipo_local`
ORDER BY puntos DESC, partidos.equipo_local
https://imgur.com/a/ijPCEU9
我希望得到每场比赛的总成绩。
如果puntos_local
> puntos_visitante
列puntos
将为puntos = puntos + 3
如果是平局,我只想加总1
。
最后,我希望获得本赛季的整体得分。 Ty
答案 0 :(得分:1)
SELECT `equipo_local`,
Sum(puntos +
(Case When `puntos_local` > `puntos_visitante` Then 3 Else 0 End)
) As puntos_x,
,Sum(puntos +
(Case When `puntos_local` = `puntos_visitante` Then 1 Else 0 End)
) As puntos_y
FROM `partidos`
WHERE temporada LIKE "07/08"
-- GROUP BY `equipo_local`
ORDER BY puntos DESC, partidos.equipo_local
答案 1 :(得分:1)
您可以尝试
SELECT equipo_local,
SUM(case
when puntos_local > puntos_visitante
then 3
when puntos_local = puntos_visitante
then 1
else 0
end) AS puntos
FROM partidos
WHERE temporada LIKE "07/08"
GROUP BY equipo_local
ORDER BY puntos DESC, partidos.equipo_local
答案 2 :(得分:0)
我认为您需要更新
update partidos
set puntos= case when puntos_local>puntos_visitante then puntos+3
when puntos_local=puntos_visitante then puntos+1
else puntos end
答案 3 :(得分:0)
选择equipo_local
,
SUM((案例
当puntos_local
> puntos_visitante
时
然后3
当puntos_local
= puntos_visitante
时
然后1
end))AS puntos
来自partidos
像temporada一样的“ 07/08” GROUP BY equipo_local 排列顺序:puntos DESC,partidos.equipo_local