Transformando linhas em colunas com SQL (pivoteamento)

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

[ Hits: 6.115 ]

 


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

Aumentando área de SWAP sem boot ou reinstalação em LVM

Configurando codecs e Java no Ubuntu 9.04

Atualizando Linux Mint 17 para Linux Mint 17.1

Atalho para Terminal (konsole) no KDE / openSUSE

Prompt colorido no Xubuntu 9.04

  

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