T-SQL -根据多个表的值扩展本地参数中的文本,而不使用if语句



问题如下:我有一些参数

Declare @testParam nvarchar(max) = '',
Declare @ID int = 3

和我有许多复杂的表,它们都有一个列,命名不同,但类似于某种类型为BIT的状态。

0

我已经找到了一种方法通过使用case子句来完成它,但是如果有更好的方法(在性能的情况下)我想知道它。

使用case子句的解决方案:

select @testParam = @testParam + 
case 
when CapacityStatus = 1
then 'Full capacity ' 
else ''
end
from CapacityTable
where ID = @ID

将上面的代码以类似的方式应用于您需要的每个表。

最新更新