Aula 9: Funções SQL e Agrupamento de Dados

Aula 9: Funções SQL e Agrupamento de Dados

Para a aula 9, o foco será em Funções SQL e Agrupamento de Dados (GROUP BY). Esses conceitos são importantes para operações de análise e resumo dos dados, permitindo consultas mais detalhadas e precisas.


1. Funções SQL

As funções SQL são usadas para manipular dados em consultas, permitindo cálculos e transformações nos valores armazenados.

1.1. Funções de Data e Hora

Essas funções lidam com datas e horários, ajudando em cálculos e manipulações temporais.

  • NOW(): Retorna a data e hora atual. SELECT NOW();
  • YEAR(), MONTH(), DAY(): Extraem o ano, mês e dia de uma data. SELECT YEAR(data_nascimento) FROM alunos;

1.2. Funções Matemáticas

Essas funções realizam operações aritméticas nos dados.

  • ABS(): Retorna o valor absoluto. SELECT ABS(-10);
  • ROUND(): Arredonda um valor para um número específico de casas decimais. SELECT ROUND(3.14159, 2);

1.3. Funções de String

Manipulam textos, permitindo modificações e extrações.

  • UPPER() e LOWER(): Convertem o texto para maiúsculas ou minúsculas. SELECT UPPER(nome) FROM alunos;
  • SUBSTRING(): Extrai uma parte do texto. SELECT SUBSTRING(nome, 1, 3) FROM alunos;

1.4. Funções de Agregação

Essas funções realizam cálculos em um conjunto de valores e retornam um único valor.

  • COUNT(): Conta o número de registros. SELECT COUNT(*) FROM alunos;
  • SUM(): Calcula a soma de valores. SELECT SUM(nota) FROM notas;
  • AVG(): Calcula a média. SELECT AVG(nota) FROM notas;
  • MAX() e MIN(): Encontram o valor máximo e mínimo. SELECT MAX(idade), MIN(idade) FROM alunos;

2. Agrupamento de Dados com GROUP BY

O GROUP BY agrupa os dados de uma consulta com base em uma ou mais colunas e permite o uso de funções de agregação para calcular valores específicos de cada grupo.

  • Sintaxe Básica: SELECT coluna, COUNT(*) FROM tabela GROUP BY coluna;

Exemplo:

Listar a quantidade de alunos por cidade:

SELECT cidade, COUNT(*) AS total_alunos
FROM alunos
GROUP BY cidade;


3. Exercícios Práticos

  1. Funções de Data e Hora:
    • Usando a função YEAR(), selecione todos os alunos nascidos antes de 2000.
  2. Funções Matemáticas e String:
    • Crie uma consulta que retorne o nome dos alunos em maiúsculas usando UPPER() e arredonde a nota final para uma casa decimal usando ROUND().
  3. Funções de Agregação:
    • Calcule a média de idade dos alunos da tabela alunos.
    • Conte o número total de registros na tabela alunos.
  4. Agrupamento de Dados:
    • Liste a quantidade de alunos por faixa etária (por exemplo, “menor de 18”, “entre 18 e 25”, “maior de 25”).

4. Desafio de Agrupamento e Funções

Dado um banco de dados de uma biblioteca com a tabela emprestimos (contendo as colunas id_livro, id_usuario, data_emprestimo, data_devolucao), faça o seguinte:

  1. Calcule o número total de empréstimos por mês usando YEAR(), MONTH() e COUNT().
  2. Crie uma consulta que mostre os usuários que mais emprestaram livros, usando GROUP BY e COUNT().
  3. Liste o maior e o menor tempo de empréstimo em dias, utilizando DATEDIFF() entre data_emprestimo e data_devolucao.

Esse material oferece uma introdução às funções SQL e agrupamento de dados, permitindo operações e cálculos complexos no banco de dados.

Especialista em Tecnologias Digitais Escrevo sobre como as inovações digitais estão revolucionando e facilitando a vida das pessoas, transformando o cotidiano e abrindo novas possibilidades.

Publicar comentário