Ik ben nog steeds een beetje in de war door uw vraag, maar dit zou moeten werken zoals ik het begrijp. In plaats van alle IF
uitspraken, overweeg dan om naar een enkele CASE
te gaan statement, waarbij de waarde standaard op 0 staat. Voeg vervolgens een vinkje toe als de waarde niet 0 is, om iets te doen.
DECLARE @Level int
DECLARE @Total int
DECLARE @NewPoint int
SET @Level = 61
SET @Total = 100
SELECT
@NewPoint = CASE
WHEN @Level = 61 AND @Total < 482 THEN 10
WHEN @Level = 62 AND @Total < 487 THEN 15
WHEN @Level = 63 AND @Total < 492 THEN 20
WHEN @Level = 64 AND @Total < 497 THEN 25
WHEN @Level = 65 AND @Total < 502 THEN 30
ELSE 0
END
IF @NewPoint <> 0
BEGIN
SELECT 'DO SOMETHING'
END