Não trabalhei com Pivot. Não tenho certeza se o pivô é a coisa certa a usar. É possível mostrar esses dados:
-------------------
| Name | Code |
-------------------
|Test A | 1 |
|Test B | 2 |
|Test C | 3 |
-------------------
Neste formato:
------------------------------
| Customer | Fleet | Account |
------------------------------
|Test A |Test B |Test C |
------------------------------
Se Código for 1 é Cliente. Se o Código for 2, é Frota. Se o Código for 3 é Conta.
Você pode fazer isso com
pivot
, quando estiver lidando com a tradução das colunas em linhas, você ainda precisará utilizar um agregado. Opivot
tem três peças principais:No exemplo de trabalho acima, vemos o agrupamento como
Name
e espalhamos os resultadoscode
em três colunas com valores codificados. A agregação é baseada noMAX
valor dename
, é isso que vamos dinamizar a linha girando em um grupo com um valor máximo que retornaria apenas uma linha.Agora, se você quiser criar isso dinamicamente versus hardcoding, precisará examinar o sql dinâmico.
Aqui está um artigo sobre sql dinâmico dinâmico no MS SQL Dicas de Aaron Bertrand