0% acharam este documento útil (0 voto)
26 visualizações31 páginas

FICHA8 MySQL SQL CONSULTASNUMATABELA

O documento descreve consultas SQL em uma única tabela, incluindo cláusulas WHERE, condições compostas e ordenação de resultados. O documento também fornece exemplos de consultas SQL.

Enviado por

kelden mourato
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PPTX, PDF, TXT ou leia on-line no Scribd
0% acharam este documento útil (0 voto)
26 visualizações31 páginas

FICHA8 MySQL SQL CONSULTASNUMATABELA

O documento descreve consultas SQL em uma única tabela, incluindo cláusulas WHERE, condições compostas e ordenação de resultados. O documento também fornece exemplos de consultas SQL.

Enviado por

kelden mourato
Direitos autorais
© © All Rights Reserved
Levamos muito a sério os direitos de conteúdo. Se você suspeita que este conteúdo é seu, reivindique-o aqui.
Formatos disponíveis
Baixe no formato PPTX, PDF, TXT ou leia on-line no Scribd

Sistema de Gestão de Bases de dados

ISUTC INSTITUTO SUPERIOR DE


TRANSPORTES E COMUNICAÇÕES

O Grupo da Disciplina
DEPARTAMENTO DE TECN. DA
INFORMAÇÃO E COMUNICAÇÃO
Ano Lectivo 2023

Sistemas de Gestão de Base de Dados

_________________
2º semestre
CONTEÚDO
• Consultas Com Uma Tabela
– Cláusula WHERE
– Condições Compostas
– Ordenação dos Resultados
– Funções de Agregação
– Consultas Agrupadas
• Actividades práticas 15 e 16 (TPC)
MODELO FISICO
SQL
(Structured Query Language )
1. CONSULTAS NUMA ÚNICA

Base de Dados
TABELA

6
Comandos SQL

1. Consultas Com Uma Tabela

• Sintax:

Base de Dados
7
Comandos SQL

1. Consultas Com Uma Tabela

• SELECT - especifica os atributos cujos valores interessa conhecer.

Base de Dados
• FROM - especifica as tabelas envolvidas no processamento em questão

• WHERE - especifica a condição de restrição que permite restringir o número de linhas


a apresentar.

• GROUP BY - permite agrupar informação.

• HAVING - especifica as restrições ao nível dos grupos que são processados.

• ORDER BY - especifica a ordenação dos resultados.


8
Comandos SQL

1. Consultas Com Uma Tabela


• Exemplos:
ESTUDANTE (est_num, est_apelido, est_nome, est_sexo, est_bi, est_nacionalidade,est_morada, est_telef, est_email)

Base de Dados
INSCRICAO(num_est, cod_disc, insc_data, nota)

DISCIPLINA (disc_cod, disc_nome)

• (a) Imprimir o número e o nome de todos os estudantes.


• SELECT est_num, est_nome
• FROM estudante;

• (b) Imprimir todos os dados de estudantes.


• SELECT *
• FROM estudante;

• (c) Imprimir os números dos inscritos.


• SELECT DISTINCT num_est
9
• FROM inscricao;
Comandos SQL

1.1 Cláusula WHERE

• Utilizamos para fazer filtragem de resultado.

Base de Dados
Testes feitos:
– Comparação

– Intervalo

– Conjunto

– Valores nulos

– Correspondência com padrões


10
Comandos SQL

• 1.1 Cláusula WHERE

Base de Dados
11
Comandos SQL

• 1.1 Cláusula WHERE

Base de Dados
12
Comandos SQL
• 1.1 Cláusula WHERE
 Exemplos:
 Dadas as seguintes tabelas

Base de Dados
13
Comandos SQL
• 1.1 Cláusula WHERE
 Exemplos:
 (a) Imprimir todos os dados de empregados que estão no departamento 01.

Base de Dados
 SELECT *
 FROM empregado
 WHERE cod_dept=’01’;

 (b) Imprimir o número, bi,nome e data de nascimento de todos os empregados


cuja data de nascimento esta entre 01/01/1980 a 31/12/1985.
 SELECT emp_num, emp_bi, emp_nome, emp_data_nasc
 FROM empregado
 WHERE emp_data_nasc BETWEEN ‘01/01/1980’AND ‘31/12/1985’;

14
Comandos SQL
• 1.1 Cláusula WHERE
Exemplos:
 (c) Imprimir todos os empregados que estao nos departamentos 01, 02 e 04.
 SELECT *

Base de Dados
 FROM empregado
 WHERE cod_dept IN (“01”,”02”,”04”);

 (d) Imprimir empregados sem número de telefone


 SELECT *
 FROM empregado
 WHERE emp_telef IS NULL;

 (e) Imprimir bi e nome de empregados com número de telefone.


 SELECT emp_bi, emp_nome
 FROM empregado
15
 WHERE emp_telef IS NOT NULL;
Comandos SQL
• 1.1 Cláusula WHERE
 Exemplos:

 (f) Imprimir os empregados cujo nome contém a palavra “ca”.

Base de Dados
 SELECT *
 FROM empregado
 WHERE emp_nome LIKE “%ca%”;

 (g) Imprimir os empregados cujo nome tem como segunda letra “o”
 SELECT *
 FROM empregado
 WHERE emp_nome LIKE “_o%”;

 (h) Imprimir os empregados cujo nome começa pela letra “b”


 SELECT *
 FROM empregado
16
 WHERE emp_nome LIKE “b %”;
Base de Dados
ACTIVIDADE 15

17
ESTUDANTE
est_nu est_apel est_no est_se est_bi est_nacionali est_morad est_tel est_email
m ido me xo dade a ef
0001 Bobo Dércio M 100111 Moçambicana B. 8220128 derciobobe@transco
M Leberdade 4 m.co.mz
0002 Sulude Joyce F 101200Y Malawiana B. Nyerere 0287391 Joyce.sulude@gmail.
2 com
0005 Chaúma Ivan M 104000 Portuguesa C. Madeira 3200000 Ivan.chauma@trans
N 1 com.co.mz
0003 Mussá Jéssica F 100050I Moçambicana B. Alto Maé 8200010 Jessica.mussa@trans

Base de Dados
0 com.co.mz
0006 Laimoni Yara F 100200K Moçambicana B. 8400100 Yara.laimoni@transc
Xipamanine 0 om.co.mz

0007 Razak Imran M 100510L Moçambicana B. Alto Maé 8200101 Imran.razak@transc


0 om.co.mz
0009 Parruque Paula F 110020 Moçambicana B. Alto Maé 8601000 Paula.parruque@tra
B 2 nscom.co.mz

DISCIPLINA
disc_cod disc_nome
SGBD Sistemas de Gestão de Base de Dados
ASI Aplicações e Serviços de Internet
ANT Antenas
RIP Redes IP 18
PDS Processamento Digital de Sinais
SCII Sistemas de Comunicação II
INSCRICAO
Num_est Cod_disc Insc_data nota
0003 SGBD 20/06/2014 17
0005 SGBD 10/06/2015 7

Base de Dados
0003 SGBD 02/06/2013 5
0001 ANT 17/07/2015 18
0006 RIP 12/06/2014 11
0007 SGBD 29/06/2015 15
0006 PDS 30/06/2013 4
0005 RIP 12/06/2012 8
0009 SGBD 13/06/2013 13
0009 ASI 19/06/2015 2
0001 ANT 25/02/2011 2

19
Com recurso a sql apresente consultas para impressão de:
1. Todos os dados de estudantes.
2. Numero, apelido e nome de estudantes.

Base de Dados
3. Numero, apelido e nome de estudantes de nacionalidade moçambicana.
4. Numero, apelido e nome de estudantes residentes no Alto Maé.
5. Numero, apelido e nome de estudantes com número de telefone da
Tmcel.
6. Numero, apelido e nome de estudantes com email da transcom
7. Numero, apelido e nome de estudantes cujo nome tem como segunda
letra "a".
8. Numero, apelido e nome de estudantes cujo nome termina pela letra "a".
9. Numero, apelido e nome de estudantes estrangeiros.
10. Actualizar a nacionalidade da estudante Joyce para "Brasileira".
20
Comandos SQL
• 1.2 Condições Compostas
 Sintax

Base de Dados
21
Comandos SQL

• 1.2 Condições Compostas


 Exemplo:

Base de Dados
 Imprimir os nomes dos empregados que estão nos departamentos de 1 a 3 e sem
número de telefone?

 SELECT emp_nome
 FROM empregado
 WHERE (cod_dept BETWEEN 1 AND 3) AND (emp_telef IS NULL);

22
Comandos SQL

• 1.3 Ordenação dos Resultados

Base de Dados
 Sintax

 ASCendente, DESCendente

23
Comandos SQL

• 1.3 Ordenação dos Resultados


 Exemplos:
 (a) Imprimir todos empregados com número de telefone na ordem crescente de

Base de Dados
data de nascimento.
 SELECT *
 FROM empregado
 WHERE emp_telef IS NOT NULL
 ORDER BY emp_data_nasc ASC;

 (b) Imprimir todos os empregados ordenado por idade e departamento.


 SELECT *
 FROM empregado
 ORDER BY emp_data_nasc, cod_dept; 24
Comandos SQL

• 1.4 Funções de Agregação

Base de Dados
 Têm por objectivo executar cálculos sobre o resultado de um comando SELECT
(resumir) e são elas:

 SUM ( ) - Devolve a soma de todos os valores da coluna


 AVG ( ) - Devolve a média de todos os valores da coluna
 MAX ( ) - Devolve o maior valor da coluna
 MIN ( ) - Devolve o menor valor da coluna
 COUNT ( ) - Devolve o número de valores de uma coluna
25
 COUNT (*) - Devolve o número de linhas
Comandos SQL

• 1.4 Funções de Agregação

 Sintax

Base de Dados
26
Comandos SQL
• 1.4 Funções de Agregação
 Exemplos:
 (a) Quantos departamentos possuem empregados?
 SELECT COUNT(DISTINCT cod_dept)

Base de Dados
 FROM empregado;

 (b) Quantos empregados foram registados na base de dados?


 SELECT COUNT(*)
 FROM empregado;

 (c) Qual é o numero total de empregados e quantos tem telefone?


 SELECT COUNT(*), COUNT(emp_telef)
 FROM empregado;

 NB: Nas funcões de agregação SUM( ), AVG( ), MIN( ), MAX( ), COUNT( ) os 27


valores NULL são ignorados.
Comandos SQL
• 1.5 Consultas Agrupadas
 Em algumas ocasiões é necessário agrupar registos.
 Exemplo: Calcular a media de salários para cada departamento.

Base de Dados
 Sintax:

 Exemplo:
 Imprimir o total de empregados por cada departamento.
 SELECT cod_dept, COUNT(*)
 FROM empregado
 GROUP BY cod_dept;

NB: Qualquer coluna que não seja uma função de agregação só pode estar na
cláusula SELECT se estiver na cláusula GROUP BY. (rigidamente obrigatório no 28
Oracle- vede http://raelcunha.com/oracle.php)
Comandos SQL
• 1.5 Consultas Agrupadas
Restrições sobre os Grupos: Cláusula HAVING
 HAVING actua unicamente sobre o resultado dos grupos e esta é utilizada sempre
que se pretende restringir o conjunto dos GRUPOS de registos a considerar.

Base de Dados
 Sintax:

 Exemplo:
 Imprimir o total de empregados por idade, mas somentes para idades que
ocuparam no mínimo três departamentos.
 SELECT emp_data_nasc, COUNT (*)
 FROM empregado
 GROUP BY emp_data_nasc
 HAVING COUNT (DISTINCT cod_dept)>=3;
29
ACTIVIDADE 16 (TPC)
Com recurso a sql apresente consultas para impressão de:
1. Numero, apelido e nome de estudantes ordenados por apelido.
2. Total de estudantes por sexo.
3. Numero, apelido e nome de estudantes moçambicanos com numero de telefone de Tmcel.
4. Média das notas por disciplina.
5. Total de notas por disciplina, somente para as disciplinas com mais de 2 notas.
6. Total de estudantes por disciplina.
7. Média de notas positivas por disciplina.
8. Máxima nota na disciplina de SGBD.
9. Disciplina onde registou-se maior nota no ano de 2013.
Extra:
i) Numeros de estudantes insccritos nas disciplinas de SGBD e RIP.
ii) Total de inscrições por estudante
iii) Total de disciplinas por estudante
iv) Total de notas positivas por disciplina
v) Media global de cada estudante (use somentes notas positivas)
vi) Numero de vezes que cada estudante reprovou.
GARANTE O TEU FUTURO
COM UMA FORMAÇÃO SÓLIDA

Prolong. da Av. Kim Il Sung (IFT/TDM) Edifício D1


Maputo, Moçambique
www.facebook.com/isutc
www.transcom.co.mz/isutc

Você também pode gostar