webForumDet fria alternativet

Behöver hjälp med SQL

ASP

7 svar · 325 visningar · startad av sven

Medlem sedan aug. 2001383 inlägg
Frågan#1

Hmm... mitt fotbollslag igen :)

Har i tabellen match kolumnerna datum, typ(om det är en seriematch eller träningsmatch), hlag, blag, hmal, bmal

Nu tänkte jag kolla i vilken match jag har största vinsten i en seriematch men hur skriver jag den SQL satsen?

Medlem sedan dec. 200012 464 inlägg
#2
select * from t where abs(hmal-bmal) in (
Select max(abs(hmal-bmal))  from t)
Medlem sedan aug. 2001383 inlägg
#3

Jag hade funderat på något liknande (förutom abs vad betyder det egentligen?)
Men jag måste också ha in typ=seriematch och att hlag = Albinoleffe för att sen krångla till det ytterliggare så kan Albinoleffe spela bortamatch oxå (även om det inte är så kul:) ) och hur blir det då?

Medlem sedan aug. 2001383 inlägg
#4

Nu fick jag in det där med typ och lagnamnet. Så här:

SELECT datum, typ, hlag, blag, hmal, bmal FROM match 
WHERE typ = 'serie' AND hlag = 'Albinoleffe' AND abs(hmal-bmal) 
IN (SELECT MAX (abs(hmal-bmal)) FROM match )

Men fortfarande bara hemma matcher?

Medlem sedan okt. 20005 273 inlägg
#5
[red]
SELECT datum, typ, hlag, blag, hmal, bmal FROM match 
WHERE typ = 'serie' AND (hlag = 'Albinoleffe' OR blag = 'Albinoleffe') AND abs(bmal-hmal) 
IN (SELECT MAX (abs(bmal-hmal)) FROM match ) 
[/red]

kanske :OO

Medlem sedan aug. 2001383 inlägg
#6

Funkar inte alls...
dessutom om Albinoleffe är blag så måste det ju bli tvärt om eller? hmm?
jag menar om hlag = Albinoleffe SELECT MAX (abs(hmal-bmal)) så borde ju det bli typ?? blag = Albinoleffe SELECT MAX (abs(bmal-hmal))
eller? Annars blir det största hemmavinst eller största bortaförlust?

Medlem sedan dec. 200012 464 inlägg
#7

Jo, ABS betyder absolutbeloppet av ett värde.

men när du berättar alla förutsättningar så blir det nog en annan lösning

select top 1 * from (
select  hmal - bmal as vinst, * from match
 where hlag = 'Albinoleffe' 
     and typ = 'Serie'
union all 
select  bmal - hmal , * from match
 where blag = 'Albinoleffe' 
     and typ = 'Serie' ) as s
order by vinst desc
Medlem sedan aug. 2001383 inlägg
#8

Så har man då lärt sig om ABS oxå. Och tänk jag som trodde att det hadde något med bilar att göra.... så det kan bli...

Tackar LarsG. Nu funkar det precis som jag ville.

247 ms totalt · 4 externa anrop · v20260731065814-full.e96017d9
122 ms — deklarationer (db)
0 ms — hämta statistik (cache)
122 ms — hämta tråd, inlägg och bilagor (db)
121 ms — ändringar (db)