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

Откуда:
Сообщений: 2
Добрый день!

Есть TABLE1 в которой 5 столбцов (col1,col2,col3,col4,col5) с какими-то значениями.

Есть TABLE2:
ColumnColumnAlias
col1 Столбец 1
col2 Столбец 2
col3 Столбец 3
col4 Столбец 4
col5 Столбец 5

Т.е. во второй таблице содержатся осмысленные названия для столбцов первой таблицы.

Подскажите, пожалуйста, каким образом можно вывести все значения из TABLE1, чтобы в заголовки столбцов подставлялись значения из TABLE2.ColumnAlias ?
MS-SQL 2005.

Модератор: Тема перенесена из форума "MySQL".


Сообщение было отредактировано: 22 мар 12, 10:56
22 мар 12, 10:50    [12293287]     Ответить | Цитировать Сообщить модератору
 Re: Заголовки столбцов запросом из другой таблицы  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10233
Блог
динамика
22 мар 12, 10:57    [12293326]     Ответить | Цитировать Сообщить модератору
 Re: Заголовки столбцов запросом из другой таблицы  [new]
goodname
Member

Откуда:
Сообщений: 2
Алексей, непонятно :(
22 мар 12, 11:08    [12293402]     Ответить | Цитировать Сообщить модератору
 Re: Заголовки столбцов запросом из другой таблицы  [new]
iap
Member

Откуда: Москва
Сообщений: 47144
Обычно для таких целей используют расширенные свойства колонок
http://msdn.microsoft.com/ru-ru/library/ms190243(v=sql.100).aspx
22 мар 12, 11:17    [12293471]     Ответить | Цитировать Сообщить модератору
 Re: Заголовки столбцов запросом из другой таблицы  [new]
iap
Member

Откуда: Москва
Сообщений: 47144
iap
Обычно для таких целей используют расширенные свойства колонок
http://msdn.microsoft.com/ru-ru/library/ms190243(v=sql.100).aspx
Имеется в виду, что названия колонок понадобятся для отображения на клиенте.
22 мар 12, 11:19    [12293491]     Ответить | Цитировать Сообщить модератору
 Re: Заголовки столбцов запросом из другой таблицы  [new]
denis2710
Member

Откуда: Москва
Сообщений: 3384
можно что-то типа
+

if object_id('tempdb..#table', 'U') is not null 
  drop table #table
create table #table
  (
    f1 varchar(10)
  , f2 varchar(10)
  , f3 varchar(10)
  , f4 varchar(10)
  )
declare @str varchar(max)
insert  into #table
        ( f1, f2, f3, f4 )
values  ( 'qwe', 'asdas', 'dsafd', 'gfhfgdf' ) ;
declare @t table
  (
    c_name varchar(50)
  , a_name varchar(50)
  )
insert  into @t
        ( c_name, a_name )
values  ( 'f1', 'p1' )
,       ( 'f2', 'p2' )
,       ( 'f3', 'p3' )
,       ( 'f4', 'p4' ) ;
with  zz ( x )
        as ( select c_name + ' as ' + a_name + ' ,'
             from   @t
             for    xml path('')
                      , type
           ) ,
      zz1 ( fields )
        as ( select zz.x.value('.[1]', 'varchar(max)')
             from   zz
           ) ,
      zz2 ( scr )
        as ( select 'select ' + substring(fields, 1, len(fields) - 1) + 'from  #table '
             from   zz1
           )
/*если одна строчка*/
  select  @str = scr
  from    zz2


exec (@str)

22 мар 12, 11:20    [12293499]     Ответить | Цитировать Сообщить модератору
 Re: Заголовки столбцов запросом из другой таблицы  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10233
Блог
мои 5 копеек:
create table #t1 ( val varchar(10), a varchar(10) )
insert into #t1
select 'val1', 'Alias1'
union all
select 'val2', 'Alias2'
union all
select 'val3', 'Alias3'


create table #t2 ( val1 varchar(10), val2 varchar(10), val3 varchar(10) )
insert into #t2
select 'AAA1', 'BBB1', 'CCC1'
union all
select 'AAA2', 'BBB2', 'CCC2'

declare @str varchar(1024)
      , @aliases varchar (100)

set @str = '
select top 0 * from #t1
pivot ( max(val) for a in ( '

select @aliases = isnull( @aliases, '' ) + ',[' + a + ']'  from #t1

set @str = @str + stuff( @aliases, 1, 1, '' ) + 
' ) 
) pv
union all
select * from #t2'

exec ( @str )

drop table #t1, #t2
22 мар 12, 11:27    [12293556]     Ответить | Цитировать Сообщить модератору
 Re: Заголовки столбцов запросом из другой таблицы  [new]
fbmfba
Guest
Knyazev Alexey,

так тогда же выведутся не значения в столбцах, а их преобразование в строку
23 мар 12, 18:30    [12304089]     Ответить | Цитировать Сообщить модератору
 Re: Заголовки столбцов запросом из другой таблицы  [new]
Knyazev Alexey
Member

Откуда: Екб -> Мск
Сообщений: 10233
Блог
fbmfba
Knyazev Alexey,

так тогда же выведутся не значения в столбцах, а их преобразование в строку


что?
23 мар 12, 18:46    [12304150]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить