Transformando linhas em colunas com SQL (pivoteamento)

Publicado por edcley da silva firmino em 19/04/2017

[ Hits: 5.887 ]

 


Transformando linhas em colunas com SQL (pivoteamento)



Transformando linhas em colunas com utilizando SQL ansi, técnica chamada de pivoteamento.

Prezados, nesse pequeno texto irei explicar como transpor o conteúdo de linhas em colunas utilizando SQL ansi (deve funcionar em qualquer banco de dados relacional).

Imaginemos que você possua uma tabela com o seguintes campos e conteúdo:

Matricula  disciplina  bimestre  nota
101,       matematica, 1,        8.5
102,       matematica, 1,        9.5
102,       português,  2,        5.0
101,       matematica, 2,        9.0

Digamos que você queira mostrar o resultado da consulta das notas da disciplina de matemática da seguinte forma:

Matricula  Nota 1 bimestre   Nota 2 bimestre
 101           8.5.              9.0
 102.          9.5.              5.0

Vamos ao SQL:

Select matricula,
(Select nota from tabela where bimestre = 1 and disciplina = matematica and matricula = t1.matricula) as " Nota do 1 bimestre",

(Select nota from tabela where bimestre =2 and disciplina = matematica and matricula = t1.matricula) as " Nota do 2 bimestre"

From tabela t1 where disciplina = "matematica"

Perceba que amarramos a consulta interna com a matrícula da tabela externa que apelidamos de "t1".

Com isso, realizamos a consulta com SQL transportando o conteúdo das linhas em colunas.

Outras dicas deste autor
Nenhuma dica encontrada.
Leitura recomendada

Tutorial completo sobre modem HSP56 no Conectiva 10

Formatando datas no Java e convertendo para o Firebird

Instalando o editor de texto Joe manualmente

Ingressando Ubuntu 14 no Samba4

Implementação de segurança em conexões remotas (SSH)

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts