Summering av två variabler

Databaser & SQL

4 svar · 245 visningar · startad av Ralle

Medlem sedan feb. 2003210 inlägg
Trådstart#1

Den här koden hämtar värden från en annan SQL.

Om vi nu tar gm1 (räknar ihop alla gjorda mål när laget är hemmalag), gm2 (räknar ihop alla gjorda mål när laget är bortalag).

Men efter första omgången så har bara en av dom ett värde, när jag summerar så här får jag värde noll.

Kan någon förstå varför?

SELECT [Lag], [Vinster]+[Oavgjorda]+[Forluster] AS Matcher, _&
[gm1]+[gm2] AS Gjorda, [im1]+[im2] AS Inslappta,  _&
([gm1]+[gm2])-([im1]+[im2]) AS Malskillnad, _&
(3*[Vinster]+[Oavgjorda]+[ForlStr]) AS Poang _&
FROM resultat
ORDER BY (3*[Vinster]+[Oavgjorda]+[ForlStr]) DESC , ([gm1]+[gm2])-([im1]+[im2]) DESC;
Medlem sedan juli 2002145 inlägg
#2

Frågan ser ju helt korrekt ut tycker jag... Har du kollat vad du har för värde i respektive kolumn? Kan det möjligen vara NULL-värden som spökar? Du kan ju prova med att explicit sätta alla bortamatchkolumner till 0.

Medlem sedan feb. 2003210 inlägg
#3

Jo, förmodligen är det nullvärdet som spökar.

Då måste jag göra det i ett tidigt skede. Innan den börjar summera.

Frågan är hur man ska göra det?

Medlem sedan dec. 200012 464 inlägg
#4

Uppdatera alla kolumner med null till 0 eller gör en översättning i frågan

select  iif(gm1 is null,0,gm1) + iif(gm2 is null,0,gm2) ...
Medlem sedan feb. 2003210 inlägg
#5

Tack, nu fungerar det.

252 ms totalt · 4 externa anrop · v20260731065814-full.d34c6d5a
124 ms — deklarationer (db)
0 ms — hämta statistik (cache)
124 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)