sql >> Databasteknik >  >> RDS >> Sqlserver

MS SSQL:Hur man använder case when som exec-parameter

Ditt antagande är helt enkelt fel. Kontrollera EXECUTE documentation

Execute a stored procedure or function
[ { EXEC | EXECUTE } ]
    { 
      [ @return_status = ]
      { module_name [ ;number ] | @module_name_var } 
        [ [ @parameter = ] { value 
                           | @variable [ OUTPUT ] 
                           | [ DEFAULT ] 
                           }
        ]
      [ ,...n ]
      [ WITH RECOMPILE ]
    }
[;]

Som du ser kan du skicka som @parameter :

  • värde
  • @variabel
  • STANDARD

Så du måste använda variabel för att hålla resultatet av funktionsanrop och skicka det till lagrad procedur.




  1. Node PostgreSQL timeout en fråga från klienten

  2. Hitta ett värde var som helst i en databas

  3. Hur lagrar man flera alternativ i en enda tabell?

  4. Hur kan jag läsa data från en krypterad DB med SQLiteAssetHelper?