Aşağıdaki gibi birden fazla ifade (yaklaşık 100) kullanarak bazı T-SQL kodum var. İlk IF deyim durumu DOĞRU olarak değerlendirilirse, 99 ifadenin kalanını değerlendirir.SQL CASE İfadesi - Yerel değişkenlerin değerlerini ayarlama
IF(@check = 'abc') SET @var1 = @value
IF(@check = 'def') SET @var2 = @value
IF(@check = 'ghi') SET @var3 = @value
IF(@check = 'jkl') SET @var4 = @value
IF(@check = 'mno') SET @var5 = @value
…
…
Bunları bir CASE İfadesi kullanmak için dönüştürmek istiyorum. Ancak örneğin
CASE @check
WHEN 'abc' THEN SET @var1 = @value
WHEN 'def' THEN SET @var2 = @value
WHEN 'ghi' THEN SET @var3 = @value
WHEN 'jkl' THEN SET @var4 = @value
WHEN 'mno' THEN SET @var5 = @value
…
…
END
için ben bunu yapmak mümkün değilim ve ben VAKA İfade içinde SET kullanmayın diyor SQL hatası alıyorum.
Bunu nasıl başarabileceğime dair herhangi bir fikrim var mı? Teşekkürler!
Eğer bu koşulların her biri farklı bir değişken ayarlıyorsa, başka birini kullanabilirsiniz. Soruyu doğru yazdığınızdan emin misiniz? –
Çalışacak mı? SET @ var1 = VARSA DAHA SONRA ... SON ... END? – a1ex07
Neden 100 farklı değişkene ihtiyacınız var? Neden sadece @ check * değerine bağlı olarak * bir * değişkeni atamadık? –