tecnologia | consultoria | banco de dados

Banco de Dados - Grupos de Dados (GROUP BY)

A cláusula GROUP BY facilita a criação de grupos, a qual aparece depois das cláusulas WHERE, mas antes da cláusula ORDER BY. Esta cláusula é bastante utilizada em conjunto com funções de grupo para realizar contagens, localizar o maior / menor valor de um grupo ou do conjunto de registros de uma tabela.

Exemplo (agrupando por departamento):
OBS: a sintaxe abaixo mostrará por departamento a quantidade de funcionários, o maior e menor salário.
SELECT
id_departamento,
MAX(vl_salario) AS maior_salario,
MIN(vl_salario) AS menor_salario,
COUNT(*) AS quantidade_funcionarios
FROM tb_funcionarios
GROUP BY id_departamento
ORDER BY id_departamento;

Exemplo (sem agrupamento, escopo total da tabela):
OBS: a sintaxe mostrará a quantidade de funcionários, o maior e menor salário da tabela.
SELECT
MAX(vl_salario) AS maior_salario,
MIN(vl_salario) AS menor_salario,
COUNT(*) AS quantidade_funcionarios
FROM tb_funcionarios;
Data publicação: 18:16 12/07/2020

Banco de Dados - Funções (Functions)

Uma função é um programa gravado para aceitar opcionalmente parâmetros de entrada, realizar uma operação ou retornar um valor único. Uma função retorna apenas um valor por execução.

Funções de Linhas Simples:
   - UPPER
Retorna a conversão da cadeia de caracteres em letras maiúsculas;
Exemplo Oracle: SELECT UPPER('texto em letras minúsculas') AS texto FROM DUAL;
Exemplo SQL Server: SELECT UPPER('texto em letras minúsculas') AS texto;
- LOWER
Retorna a conversão da cadeia de caracteres em letras minúsculas;
Exemplo Oracle: SELECT LOWER('texto em letras maiúsculas') AS texto FROM DUAL;
Exemplo SQL Server: SELECT LOWER('texto em letras maiúsculas') AS texto;
- SUBSTRING
Retorna parte da cadeia de caracteres de acordo com os parâmetros informados;
Exemplo Oracle: SELECT SUBSTRING('Database', 1, 4) AS texto FROM DUAL;
Exemplo SQL Server: SELECT SUBSTRING('Database', 1, 4) AS texto;
Funções Oracle:
- LENGTH
Retorna a quantidade de caracteres;
Exemplo: SELECT LENGTH('Paralelepípedo') AS palavra FROM DUAL;
- SYSDATE
Retorna a data atual;
Exemplo: SELECT SYSDATE AS data_atual FROM DUAL;
Funções Microsoft SQL Server:
- LEN
Retorna a quantidade de caracteres;
Exemplo: SELECT LEN('Paralelepípedo') AS palavra;
- GETDATE()
Retorna a data atual;
Exemplo: SELECT GETDATE() AS data_atual;

Funções de Linhas Múltiplas / Grupo:
   - MAX
Retorna o valor máximo;
Exemplo: SELECT MAX(VL_SALARIO) AS MAIOR_SALARIO FROM TB_FUNCIONARIOS;
- MIN
Retorna o valor mínimo;
Exemplo: SELECT MIN(VL_SALARIO) AS MENOS_SALARIO FROM TB_FUNCIONARIOS;
- SUM
Retorna a soma dos valores;
Exemplo: SELECT SUM(VL_SALARIO) AS TOTAL_SALARIO FROM TB_FUNCIONARIOS;
- AVG
Retorna a média dos valores;
Exemplo: SELECT AVG(VL_SALARIO) AS MEDIA_SALARIAL FROM TB_FUNCIONARIOS;
- COUNT
Retorna a quantidade de registros;
Exemplo: SELECT COUNT(*) AS QTD_FUNCIONARIOS FROM TB_FUNCIONARIOS;
Data publicação: 20:18 09/05/2020

Banco de Dados - Classificando Dados (ORDER BY)

A cláusula ORDER BY é responsável pela transformação da saída da consulta em dados classificados. Esta cláusula é sempre a última cláusula em uma declaração SELECT.

Classificação Ascendente (ASC):
   SELECT * FROM tb_funcionarios ORDER BY nm_funcionario ASC;
SELECT * FROM tb_funcionarios ORDER BY nm_funcionario;
Cláusulas específicas do Oracle:
SELECT * FROM tb_funcionarios ORDER BY nm_funcionario ASC NULLS FIRST;
SELECT * FROM tb_funcionarios ORDER BY nm_funcionario ASC NULLS LAST;

Classificação Decrescente (DESC):
   SELECT * FROM tb_funcionarios ORDER BY nm_funcionario DESC;
Cláusulas específicas do Oracle:
SELECT * FROM tb_funcionarios ORDER BY nm_funcionario DESC NULLS FIRST;
SELECT * FROM tb_funcionarios ORDER BY nm_funcionario DESC NULLS LAST;
Data publicação: 21:20 25/12/2019
Perfil
Olá jovem Padawan, seja bem vindo! Este site foi criado com o intuito de compartilhar um pouco de conhecimento de Tecnologia da Informação e Business Intelligence.

Linkedin  Youtube

"Eu não sei como vencer os outros; sei apenas como vencer a mim mesmo." (Yagu Munenori)


Leandro Sacramento, Todos os direitos reservados - 2012 - 2020