Você está na página 1de 5

1/5

SQL, SQLITE - CLÁUSULA WHERE E OUTRAS

ATIVIDADE

Execute as instruções que seguem sem consultar fontes de pesquisa, observe somente a
sintaxe das implementações constantes nesse material, também fique atendo as informações
intercaladas.

A cláusula where é usada para tornar nossos resultados de pesquisa mais específicos, usando a
cláusula where no SQL / SQLite podemos prosseguir e especificar as condições que devem
ser atendidas ao recuperar dados do banco de dados.
Se quisermos recuperar, atualizar ou excluir um determinado conjunto de dados, podemos
usar a cláusula where. Se não tivermos valores de correspondência de condição em suas
tabelas de banco de dados, provavelmente não recebemos nada retornado.

Cláusula WHERE no SQL:

Sintaxe:

SELECIONE coluna_1, coluna_2,…, coluna_N


FROM nome_tabela
ONDE [condição_pesquisa]

Aqui, nesta [condição_pesquisa], você pode usar operadores de comparação ou lógicos para
especificar as condições.

Por exemplo: =,>, <,! =, LIKE, AND, OR, etc.

Vamos criar um banco de dados para armazenar dados sobre os alunos. Estaremos
armazenando informações sobre cada aluno e, em seguida, também criaremos uma maneira de
recuperar, atualizar e excluir dados de alunos usando a cláusula where.

1) Vamos criar um banco de dados AgendaEscolar, crie uma tabela (Aluno), crie uma tabela
disciplina, por ultimo crie uma tabela HistoricoEscolar, observe as figuras logo a seguir.
a) create table aluno (id integer primary key, primNome string(20), ultNome string(20))
b) create table disciplina…
c) create table historico (matricula string(10), idDisciplina inteiro, nota1 numeric(4,2), nota2
numeric(4,2), primary key(matricula, idDisciplina))
2/5

Observe que nas instruções não existe chave estrangeira implementada com o uso da SQL,
mas sim uma chave composta. Isso significa que existe uma relação de dependência entre
essas tabelas.

2) Insira dados em todas as tabelas conforme as figuras que seguem, observe que existe um
critério para popular a tabela histórico. Qual é?
 Tabela aluno



 Tabela disciplina



 Tabela histórico
3/5


1) Selecione todos os registros da tabela aluno.
2) Selecione todos os registros da tabela disciplina.
3) Selecione todos os registros da tabela histórico.
4) Recupere todos os registros da tabela aluno, disciplina e histórico simultaneamente.
5) Selecione todas as colunas do registro com id 1 da tabela aluno.
6) Selecione todas as colunas do registro com id 2 da tabela disciplina.
7) Selecione todos as coluna do registro 3 (aluno) e 4(histórico).
8) Selecione os atributos chave e último nome do registro 3 (aluno) e 4(histórico).
9) Insira mais registros variados nas tabelas aluno e disciplina até completar 10 em cada uma,
mesmo procedimento na tabela histórico.

Cláusulas, parâmetros e funções utilizados na instrução SELECT

. SELECT [LISTA_DE_CAMPOS] FROM [TABELAS] : o mais simples select, onde identificamos os


campos e tabelas a serem usados. Exemplo:
. cláusula AS: é possível alterar o nome do campo quando ele estiver no SELECT. Usado quando
há nomes de campos iguais ou campos calculados.
. Cláusula WHERE: define as condições para filtrar as linhas de consulta:
- Usa-se todas as condições lógicas: = , >, < , >=, <= e <>
- Operadores lógicos para combinar mais de uma condição: AND, OR e NOT
- Valores numéricos sem aspas e valores caracter ou data com aspas
- LIKE: opção de consulta parcial em um campo caracter. Usamos % para substituir vários
caracteres e _ para apenas um caracter.
Sintaxe: select * from nomeTabela campo like ‘letra%’
- BETWEEN: opção que cria uma condição de faixa de valores. Significa “entre” valor inicial e
final.
Sintaxe: select * from nomeTabela where campo between ‘valorInicial’ operadorLogico
‘valorFinal’
- IN: é possível combinar mais de um valor de um campo com essa opção. Valores numéricos
sem aspas e caracteres ou datas com aspas.
. Cláusula ORDER BY: define a ordem de um ou mais campos a serem usados para classificar a
query.
. COUNT(*): Conta o número de linhas
. SUM(CAMPO): soma um campo numérico informado
Sintaxe: select sum(campo) from nomeTabela where (condição)
. AVG(CAMPO): calcula a média de um campo numérico
Sintaxe: select avg(campo) from nomeTabela where (condição)
4/5

. MAX(CAMPO): retorna o maior valor de um campo informado.


. MIN(CAMPO): retorna o menor valor de um campo informado.
Quando esta cláusula é combinada com as funções, o valor retornado equivale ao agrupamento.
- DROP exclui uma tabela por completo.
Sintaxe: drop table nomeTabela.
drop database nomeBancoDados.

10) Selecione o somente o histórico de todos os alunos por ordem de matricula.


11) Selecione os alunos e o histórico de todos os alunos por ordem de matricula que constam notas.
12) Selecione os alunos e o histórico de todos os alunos por ordem de matricula que constam notas
sejam maiores que 8.
13) Selecione os alunos e o histórico de todos os alunos por ordem de matricula que constam notas
sejam maiores ou igual a 7.
14) Conte a quantidade de matriculas.
15) Selecione todos os alunos.
16) Selecione os alunos que iniciam com A.
17) Selecione os alunos que iniciam com Hug.
18) Selecione os alunos que tenham a quarta letra do seu ultNome r.
19) Selecione os alunos que iniciam com A e finalizam com a letra F (inclusive).
20) Selecione os alunos que iniciam com B e finalizam com a letra S (inclusive).
21) Selecione os alunos que iniciam com B e finalizam com a letra S (inclusive) ordenado pelo
primeiro nome.
22) Selecione os alunos que iniciam com B e finalizam com a letra S (inclusive) ordenado pelo último
nome na ordem decrescente.
23) Selecione o aluno no histórico que tenha nota1 6.5
24) Some as notas do aluno 1.
25) Calcule a média das notas do aluno 7
26) Calcule a média das notas do aluno 4
27) Selecione o valor máximo da nota1 e nota2.
28) Selecione o valor máximo da nota1 e nota2.

Agrupando dados
Sintaxe: select campo1, campo2 from nomeTabela order by campo1, campo2
29) Agrupe as notas pelo id da disciplina e matricula. Exiba: matricula, idDisciplina, nota1, nota2,
idDisciplina deve ser exibido disciplina, nota1 deve ser exibido primNota, nota2 deve ser exibido
segNota.
Resultado
5/5

30) Agrupe os alunos pelo último nome, exibindo o primNome para prim_nome, ultNome para
ult_nome, matricula.
Que ver o resultado. Garimpe.

Consulta em mais de uma tabela.

31) Selecione todos os registros das tabelas aluno, disciplina e histórico.


32) Selecione o aluno e histórico do aluno 3.
33) Selecione o aluno, as disciplinas e histórico do aluno 1.
34) Selecione todas as disciplinas em ordem decrescente.
35) Selecione o histórico que tenha disciplina 10
36) Selecione a disciplina, histórico que a disciplina seja 10.
37) Exclua o aluno 3 em seguida execute as instruções pertinentes ao registro desse aluno. Informe
o que observou.
38) Exclua a tabela aluno.
39) Execute a questão 21 novamente.

Você também pode gostar