Что мне нужно сделать, это вычисляемый столбец в соответствии со значениями, возвращаемые другим полем:Выберите значение поля в соответствии с именем поля, хранящегося в другом поле
Supose:
declare @t TABLE (
code varchar(5),
address varchar(20),
result_type varchar(1),
result varchar(50)
)
insert into @t values ('0001', '', 'L', 'DFK-2020')
insert into @t values ('0001', '', 'F', 'code')
insert into @t values ('0001', '214, Samuel St', 'F', 'address')
Что мне нужно, это выбрать заявление возвращения:
DFK-2020
0001
214, Samuel St.
Единственное, что я могу думать:
select
case
when result_type = 'L' then result
when result_type = 'F' then (result) -- -> ?????
end as ret_values
Я заблудился в ????. я должен выбрать поле в соответствии с тем, что хранится в другом поле
Что-то вроде: «Когда„result_type“есть„F“, пожалуйста, выберите значение, хранящееся в поле, имя которого хранится в„результате“»
на других языках/сценариях, которые я использовал для достижения этой цели с «макро ссылки» .Something как:
select &(result) from ...
Как я могу добиться того, что в SQL Server 2008?
Как вы планируете получать все данные, чтобы иметь один тип данных? Тип данных одного столбца не может меняться от одной строки к другой. fyi: Если вы планируете использовать динамический SQL, тогда изучите [SQL Injection] (http://bobby-tables.com/). – HABO