Caros, boa tarde! Sou novo por aqui e espero poder ajudar com o que sei... mas hoje eu estou pedindo ajuda! :wacko: Seguinte, tenho uma query simples que me retorna duas colunas: semana e valor. week | valor 1 | 43.4213 2 | 54.659 3 | 36.9564 4 | 23.4584 e quero transformar isso em: 1 | 2 | 3 | 4 43.4 | 54.65 | 36.9 | 23.4 uma simples pivot. Para isso faço uma subquery e tudo certo. select sum(case when week = 1 then valor else null end), sum(case when week = 2 then valor else null end), sum(case when week = 3 then valor else null end), sum(case when week = 4 then valor else null end), from ( --QUERY PRINCIPAL--). O problema é que esse input de semana varia. O usuário entra com o valor 1 até 53 (semanas no ano) e de acordo com o input inserido a query puxa os valores referentes a 1ª semana do ano até a selecionada. Aí vem a dúvida. Como faço para a pivot ir se adaptando de acordo com o valor inserido? Pensei em algo do tipo: declare @controle as integer declare @week as integer set @controle = 0 set @week = 5 --POR EXEMPLO select while @controle < @week begin sum(case when week = @controle + 1 then valor else null end) set @controle = @controle + 1 continue from ( -- QUERY PRINCIPAL -- ). Já sei que isso não funciona por motivos simples, como a falta da virgula (ou a presença) após o sum... Alguém tem alguma idéia de como eu poderia fazer isso? Valeu galera! Abraços!!!