webForumDet fria alternativet

Behöver hjälp med SQL

ASPur ASP

7 svar · 325 visningar · startad av sven

svenMedlem sedan aug. 2001383 inlägg
#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?

LarsGMedlem sedan dec. 200012 464 inlägg
#2
select * from t where abs(hmal-bmal) in (
Select max(abs(hmal-bmal))  from t)
svenMedlem 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å?

svenMedlem 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?

icaaqMedlem 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

svenMedlem 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?

LarsGMedlem 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
svenMedlem 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.

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