Eu tenho uma mesa assim ...
CustomerID DBColumnName Data
--------------------------------------
1 FirstName Joe
1 MiddleName S
1 LastName Smith
1 Date 12/12/2009
2 FirstName Sam
2 MiddleName S
2 LastName Freddrick
2 Date 1/12/2009
3 FirstName Jaime
3 MiddleName S
3 LastName Carol
3 Date 12/1/2009
E eu quero isso ...
Isso é possível usando o PIVOT?
CustomerID FirstName MiddleName LastName Date
----------------------------------------------------------------------
1 Joe S Smith 12/12/2009
2 Sam S Freddrick 1/12/2009
3 Jaime S Carol 12/1/2009
sql
sql-server
tsql
pivot
pivot-without-aggregate
ctrlShiftBryan
fonte
fonte
sim mas por quê !!??
fonte
Pivot
minha consulta, depois mudei para isso e observei o plano de execução para executar os dois juntos. Essa abordagem custou 8% e a abordagem Pivot levou 92%!Warning: Null value is eliminated by an aggregate or other SET operation
fonte
SELECT
instrução abaixo do CTE poderia ter especificado o nome da tabela original.Edit: Eu escrevi isso sem um editor e não execute o SQL. Espero que você tenha a idéia.
fonte
Ok, desculpe pela má pergunta. gbn me colocou no caminho certo. Era isso que eu estava procurando em uma resposta.
Então eu tive que usar uma instrução while e criar a instrução acima como um varchar e usar sql dynmaic.
Usando algo parecido com isto
Para criar o @fulltext usando um loop while e selecione os nomes de coluna distintos da tabela. Obrigado pelas respostas.
fonte
Na verdade, o OP não precisava girar sem agregação, mas para aqueles de vocês que vêm aqui para saber como ver:
consulta cte parametrizada sql
A resposta a essa pergunta envolve uma situação em que o pivô sem agregação é necessário; portanto, um exemplo disso é parte da solução.
fonte
Tente o seguinte:
fonte
Isso deve funcionar:
fonte
Aqui está uma ótima maneira de criar campos dinâmicos para uma consulta dinâmica:
- resumir valores em uma tabela tmp
--- veja os campos gerados
fonte