", , , ". , , , - :
select
...,
l.v
from <your table> as t
left outer join (values
(1, x_1), (2, x_2), (3, x_3)
) as l(n, v) on l.n = t.n
, choose():
create function dbo.f_Choose5(
@index int,
@value1 sql_variant,
@value2 sql_variant,
@value3 sql_variant,
@value4 sql_variant,
@value5 sql_variant
)
returns sql_variant
as
begin
return (
case @index
when 1 then @value1
when 2 then @value2
when 3 then @value3
when 4 then @value4
when 5 then @value5
end
)
end
select dbo.f_Choose5(3, 1, 2 ,3, 4, 5)
select dbo.f_Choose5(3, 1, 2 ,3, default, default)
, SQL Server .