我正在尝试根据其他参数值来设置参数值,例如在存储过程中的以下内容
DECLARE @secndvalues NCHAR(1);
IF (@firstvalue = 'Con')
BEGIN
SET @secndvalues = 'R';
END
ELSE IF (@firstvalue = 'Tin')
BEGIN
SET @secndvalues = 'N';
END
,但似乎它与ELSE IF (@firstvalue = 'Tin')
的第二个条件无法使用。我该如何正确执行此操作?
您的代码应该起作用,但是case
似乎更简单:
DECLARE @secndvalues NCHAR(1);
SET @secondvalues = (CASE WHEN @firstvalue = 'Con' THEN 'R'
WHEN @firstvalue = 'Tin' THEN 'N'
ELSE @secondvalues
END);
实际问题是 @firstvalue
长度太短保持其值,因为 @firstvalue
值的null为null,因此@secndvalues
值无法设置,现在问题排序