webForumDet fria alternativet

Största vinst

2 svar · 231 visningar · startad av Obbelix

ObbelixMedlem sedan okt. 2002257 inlägg
#1

Hupp!

Har en tabell där resultaten från varje match sparas, hemmamål för sig och bortamål för sig. Nu skulle jag vilja få ut de största vinsterna utifrån detta. Problemet är ju att man inte kan ta diffen mellan hemma- och bortamål och sortera på det eftersom det i så fall kan bli både positiva och negativa resultat...
LarsG kanske har nåt smart för att få ut detta :)

[b]Tabell[/b]
home_goals | away_goal
----------------------
2            2
0            1
1            10
5            2

[b]Resultat[/b]
home_goals | away_goal
----------------------
1            10
5            2
0            1
2            2

/red: Kan ju fylla på med ytterligare en fråga.
Hur får man fram valigaste resultatet från samma tabell? Alltså om åtta matcher slutar 5-2 så ska resultatet bli "5 | 2 | 8".

Snart helg! :bire

ObbelixMedlem sedan okt. 2002257 inlägg
#2

Har nu fått till en lösning på mitt första problem ang största vinst.

SELECT TOP 1 
case when home_goals<away_goals then 
(away_goals-home_goals) else 
(home_goals-away_goals) end AS diff 
FROM t1 
ORDER BY diff DESC

Men min fråga ang vanligaste resultatet kvarstår...

ObbelixMedlem sedan okt. 2002257 inlägg
#3

och här kommer svaret på andra frågan :)

SELECT TOP 1
home_goals, away_goals, count(*) AS antal FROM t1
WHERE home_goals IS NOT NULL AND away_goals IS NOT NULL
GROUP BY home_goals, away_goals
ORDER BY antal DESC

Lägger på lösningen på den första frågan också så att det accepterade svaret blir "rätt"

SELECT TOP 1 
case when home_goals<away_goals then 
(away_goals-home_goals) else 
(home_goals-away_goals) end AS diff 
FROM t1 
ORDER BY diff DESC

Nu kan man ta sig en kall :birp i solväggen utan att behöva bekymra sig :)

138 ms totalt · 3 externa anrop · v20260731065814-full.3ab8d573
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)