declare @colunas_pivot as nvarchar(max), @comando_sql as nvarchar(max)
set @colunas_pivot = stuff((select distinct ',' + quotename(inddimcod) from [sde].[DADOS_T] for xml path('')), 1, 1, '')
print @colunas_pivot
set @comando_sql = '
select * from (
select inddimcod, datapublic, inddata, indvalor
from [sde].[DADOS_T]) em_linha
pivot (sum(indvalor) for inddimcod in (' + @colunas_pivot + ')) em_colunas
order by inddata'
print @comando_sql
execute(@comando_sql)
go
O que eu pretendo é criar uma view com base nesta seleção, mas a view não permite variáveis. Será que alguém me pode dizer como é que eu faço para contornar este problema?
Pergunta
rafaelreis2008
Eu fiz uma seleção pivot com colunas dinâmicas:
declare @colunas_pivot as nvarchar(max), @comando_sql as nvarchar(max) set @colunas_pivot = stuff((select distinct ',' + quotename(inddimcod) from [sde].[DADOS_T] for xml path('')), 1, 1, '') print @colunas_pivot set @comando_sql = ' select * from ( select inddimcod, datapublic, inddata, indvalor from [sde].[DADOS_T]) em_linha pivot (sum(indvalor) for inddimcod in (' + @colunas_pivot + ')) em_colunas order by inddata' print @comando_sql execute(@comando_sql) go
O que eu pretendo é criar uma view com base nesta seleção, mas a view não permite variáveis. Será que alguém me pode dizer como é que eu faço para contornar este problema?
Obrigado!
Rafael
Link para o comentário
Compartilhar em outros sites
0 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.