A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Cláusulas GROUP BY e HAVING

Apresentações semelhantes


Apresentação em tema: "Cláusulas GROUP BY e HAVING"— Transcrição da apresentação:

1 Cláusulas GROUP BY e HAVING
Funções de agrupamento

2 GROUP BY Considere a tabela Projeto SistemaNO PessoaNO HorasQTY S1 P1
300 P2 200 P3 400 P4 P5 100 P6 S2 S3 S4

3 Funções de Agrupamento
Desejamos saber o somatório de horas totais por pessoaNO Apenas SUM(horasQTDY): SELECT SUM(horasQTDY) FROM projeto; HorasQTDY 3100 Foi conseguido o total de horas de toda tabela !! Não o que foi pedido !!!

4 Funções de Agrupamento
Entender por qual atributo será feita a contagem. Desejamos saber o somatório de horas totais por pessoaNO SELECT PessoaNO,SUM(horasQTDY) FROM projeto GROUP BY pessoaNO

5 Funções de agrupamento
SELECT PessoaNO,SUM(horasQTDY) FROM projeto GROUP BY pessoaNo SistemaNO PessoaNO HorasQTY S1 P1 300 P2 200 P3 400 P4 P5 100 P6 S2 S3 S4 P1 600 P2 1000 P3 400 P4 500 P5 500 P6 100 SUM(horasQTDY)

6 Função de Agrupamento O resultado obtido pela sentença
SELECT PessoaNO,SUM(horasQTDY) FROM projeto GROUP BY pessoaNo É o re-arranjo da tabela base(projeto) em grupos de linhas : Um item para cada grupo distinto (pessoaNO) Extração da parte correspondente e da quantidade para cada um dos grupos

7 Funções de agrupamento
Seja a tabela nota_aluno_disciplina, Que grupos podem ser formulados ?

8 Função de agrupamento E se sobre os grupos obtidos na consulta,
SELECT PessoaNO,SUM(horasQTDY) FROM projeto GROUP BY pessoaNO ainda se desejar fazer um filtro através de uma condição Como total de horas superior a 550 horas

9 Having A cláusula apropriada para tal
SELECT PessoaNO,SUM(horasQTDY) FROM projeto GROUP BY pessoaNO HAVING SUM(horasQTDY) >550 P1 600 P2 1000 P3 400 P4 500 P5 500 P6 100 SUM(horasQTDY) HAVING SUM (horasQTDY) > 550 P1 600 P2 1000


Carregar ppt "Cláusulas GROUP BY e HAVING"

Apresentações semelhantes


Anúncios Google