Just nu i M3-nätverket
Gå till innehåll

Warning: Null value is eliminated by an aggregate or other SET operation.


Axi

Rekommendera Poster

Hej.

 

När jag kör min fråga får jag felmeddelande Warning: Null value is eliminated by an aggregate or other SET operation.

Jag förstår vad felmeddelandet innebär, men jag förstår inte varför jag får det.

Skälet att jag drar in detta i en Temptabell är för att detta är en del av en större sats, tar man bort Temptabell-biten så fungerar frågan utmärkt.

SELECT 
RT.Itemid
,SUM(CASE WHEN RT.Reftype = 1 AND RT.QTY >0 THEN RT.QTY END) AS [Behållning]
,SUM(CASE WHEN RT.Reftype IN ('8','9','31','33') AND RT.QTY >0 THEN RT.QTY END) AS [Inkommande]
,SUM(CASE WHEN RT.Reftype IN  ('32','10','12') AND RT.QTY <0 THEN RT.QTY END) AS [Behov]
,SUM(CASE WHEN RT.Reftype = 14 AND RT.QTY >0 THEN RT.QTY END AS [Säkerhetslager]
,RT.CovInventDimId 
INTO #NETTOBEHOV
FROM ReqTrans RT
WHERE RT.DataAreaID = 'DUMMY'
GROUP BY RT.Itemid,RT.CovInventDimId 

SELECT * FROM #NETTOBEHOV
DROP TABLE #NETTOBEHOV
Länk till kommentar
Dela på andra webbplatser

När du gör SUM på en massa värden där även NULL ingår får du varningsmeddelandet.

 

Ta t.ex raden

SUM(CASE WHEN RT.Reftype = 1 AND RT.QTY >0 THEN RT.QTY END)

 

För de rader där villkoret är uppfyllt får du ju RT.QTY från CASE:n, men för övriga rader ger CASE:n NULL. För att slippa varningsmeddelandet kan du testa med att justera CASE:arna med ELSE 0 som default-värde, typ:

SUM(CASE WHEN RT.Reftype = 1 AND RT.QTY >0 THEN RT.QTY ELSE 0 END)

 

Länk till kommentar
Dela på andra webbplatser

Intressant.

 

Jag hade provat tidigare med:

ISNULL(SUM(CASE WHEN RT.Reftype = 1 AND RT.QTY >0 THEN RT.QTY END),0) men det hjälpte inte.

Ditt förslag gör det jag tänkte göra med ISNULL, fast på rätt ställe.

 

Jag vet fortfarande inte varför min variant inte funkade i en temptabell, men att det fungerade utan en temptabell.

Din lösning fungerar dock i båda, så jag tackar så hemst mycket för hjälpen. Jag får dyka ned i min SQL bok för att se varför. ;-)

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...