Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Как заставить запрос возвращать имена столбцов как значение  [new]
bloodrain
Member

Откуда:
Сообщений: 107
К примеру есть таблица t1( a1 int, a2 int ), в ней данные (1,1) необходимо получить результат как
А1 1
А2 1

При условии что результирующая строка всегда одна.
18 май 11, 17:39    [10673443]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить запрос возвращать имена столбцов как значение  [new]
iljy
Member

Откуда:
Сообщений: 8711
bloodrain,

declare @t1 table( a1 int, a2 int )

insert @t1 values(1,1)

select * from @t1
unpivot(Val for Name in (a1,a2))u
18 май 11, 17:51    [10673529]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить запрос возвращать имена столбцов как значение  [new]
Alexandr Kr.
Member

Откуда: Украина, Харьков
Сообщений: 165
bloodrain,

create table #t1( a1 int, a2 int )
insert into #t1 values(1,1)
insert into #t1 values(2,2)


SELECT fld,val
FROM
(SELECT a1,a2 FROM #t1) p
UNPIVOT
(val FOR fld IN
(a1,a2)
)AS unpvt;
18 май 11, 17:51    [10673530]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить запрос возвращать имена столбцов как значение  [new]
bloodrain
Member

Откуда:
Сообщений: 107
iljy
bloodrain,

declare @t1 table( a1 int, a2 int )

insert @t1 values(1,1)

select * from @t1
unpivot(Val for Name in (a1,a2))u


Виноват не дописал, число столбцов заранее не известно.
18 май 11, 17:59    [10673582]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить запрос возвращать имена столбцов как значение  [new]
iljy
Member

Откуда:
Сообщений: 8711
bloodrain
iljy
bloodrain,

declare @t1 table( a1 int, a2 int )

insert @t1 values(1,1)

select * from @t1
unpivot(Val for Name in (a1,a2))u


Виноват не дописал, число столбцов заранее не известно.

А что известно? Имя таблицы? Тогда формируйте динамику на основе INFORMATION_SCHEMA.COLUMNS или sys.columns.
18 май 11, 18:03    [10673623]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить запрос возвращать имена столбцов как значение  [new]
Alexandr Kr.
Member

Откуда: Украина, Харьков
Сообщений: 165
bloodrain

Виноват не дописал, число столбцов заранее не известно.


формировать в динамике запрос где подставлять сюда unpivot(Val for Name in (a1,a2))u список необходимых столбцов.
18 май 11, 18:03    [10673624]     Ответить | Цитировать Сообщить модератору
 Re: Как заставить запрос возвращать имена столбцов как значение  [new]
bloodrain
Member

Откуда:
Сообщений: 107
Понял спасибо
18 май 11, 18:51    [10673909]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить