inspiroMedlem sedan sep. 2005673 inlägg Hej! Jag har en sql update med ett några parametrar:
UPDATE tabell SET a= @a, b= @b, c= @c WHERE x = y
Men om exempelvis parameter "c" är tom så skulle jag vilja hoppa över just den inserten. Man kan väl ha någon slags if-sats i sql men jag får inte till det riktigt?
använder sql server express.
@ndersMedlem sedan juni 200032 969 inlägg Beror väl lite på vad du menar med tom, men...
Är det null du pratar om så kan du använda COALESCE.
UPDATE tabell SET a= @a, b= @b, c= COALESCE(@c, c) WHERE x = y
inspiroMedlem sedan sep. 2005673 inlägg Med tom menar jag inte null utan att den inte innehåller någon text, alltså exempelvis string param = "";
Ska testa ditt exempel direkt! :)
@ndersMedlem sedan juni 200032 969 inlägg Om det är tom sträng du vill jämföra med borde det kunna se ut så här:
UPDATE tabell SET a= @a, b= @b,
c= CASE WHEN @c = '' THEN c ELSE @c END
WHERE x = y