Transformando linhas em colunas com SQL (pivoteamento)

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

[ Hits: 6.020 ]

 


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

Backup do histórico de mensagens do Pidgin 2.6.2 no Ubuntu 9.10

Localizando IP de seu servidor Linux (inclusive IP dinâmico)

Configurando DynDNS no Ubuntu

Gerenciamento de usuários e grupos no Linux - LPIC-102

VPN em ISA Server 2000 com Ubuntu 9.10 64 bits

  

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