sql >> Databáze >  >> RDS >> Sqlserver

Uložená procedura SQL brání zápisu null

Stále jsem z vaší otázky trochu zmatený, ale mělo by to fungovat, jak jsem pochopil. Místo všech IF příkazy, zvažte přechod do jednoho CASE příkaz s výchozí hodnotou 0. Poté přidejte kontrolu, zda hodnota není 0, abyste něco provedli.

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


  1. Jak nainstalovat postgres s NSIS se všemi parametry?

  2. Jak zjistit, zda je vypočítaný sloupec deterministický na serveru SQL Server

  3. Fulltextové vyhledávání MySQL ve více tabulkách

  4. Jak naplánovat mysql uloženou proceduru ve Windows?