Transformando linhas em colunas com SQL (pivoteamento)

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

[ Hits: 1.011 ]

 


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

INPROPRIETÁRIO - O Mundo do Software Livre

Conhecendo e instalando o OSS (Open Sound System)

Trigger Rally 3D

PostgreSQL com ZEROFILL e AUTO_INCREMENT

Webcam do Sony Vaio com chipset RICOH R587x no Linux

  

Comentários

Nenhum comentário foi encontrado.



Contribuir com comentário




Patrocínio

Site hospedado pelo provedor HostGator.
Linux banner
Linux banner
Linux banner

Destaques

Artigos

Dicas

Viva o Android

Tópicos

Top 10 do mês

Scripts