Escolar Documentos
Profissional Documentos
Cultura Documentos
Cursos de Informática
Maio - 2020
Sumário
• Parte 1
– SQL DML (histórico)
– Comando select-from-where
• Parte 2
– Funções de agregação, agrupamento e ordenação
• Parte 3
– Produto Cartesiano e operações simples de junção
– Tabelas Virtuais (visões)
• Parte 4
– Álgebra Relacionais
– Operações de Conjuntos
– Junções
Módulos componentes de um SGBD
SQL
• SQL (Structured Query Language)
• Linguagem de pesquisa declarativa padrão
para banco de dados relacional.
• Muitas das características originais do SQL
foram inspiradas na álgebra relacional.
• http://pt.wikipedia.org/wiki/SQL
SQL
• DDL - Linguagem de Definição de Dados
– Manipulação de esquemas
• DML - Linguagem de Manipulação de Dados
– Manipulação de dados
– Consulta de dados
• DCL - Linguagem de Controle de Dados
– Permissões de acesso
• DTL - Linguagem de Transação de Dados
– Manipulação de transações
SQL
SELECT <Lista_de_colunas>
FROM <Lista_de_tabelas>
[WHERE <Condição>]
Base completa
Base Reduzida
resulta em 2013 apenas
Exercício
7. Escreva uma consulta que liste o título e o ano dos
livros. Teste a consulta. Compare com a consulta 4.
select titulo
from livrostemp
where titulo like ‘%War%'
limit 10
Exercício
10. Escreva uma consulta procurando o primeiro
nome do autor de livros como Daniel ou Daniele
ou Daniela. Use o comando like. Teste a
consulta.
11. Escreva uma consulta procurando a palavra
young no título dos livros. Use o comando like.
Teste a consulta.
12. Escreva uma consulta procurando o nome do
autor de livros como Daniel tanto no início, meio
ou fim. Use o comando like. Teste a consulta.
Exercício - Respostas
-- 10. Escreva uma consulta procurando o primeiro nome do autor de
livros como Daniel ou Daniele ou Daniela. Use o comando like.
select autor
from livrosTemp
where autor like 'Daniel_ %’ limit 100
-- 11. Escreva uma consulta procurando a palavra young no título dos
livros. Use o comando like. select autor
from livrosTemp
where titulo like '%young%' limit 100
-- 12. Escreva uma consulta procurando o nome do autor de livros
como Daniel tanto no início, meio ou fim. Use o comando like.
select autor
from livrosTemp
where autor like '%Daniel%' limit 100
Sintaxe básica
• Trabalhar com período de informações
• Clausula between
• Deve se fornecer um valor inicial e um valor final
Recuperar todos os livros publicados entre 2010 e 2011
select count(*)
from livrostemp
where ano between 2010 and 2011
O resultado
Base Reduzida tem apenas o ano 2013 aponta mais de
Testar com where ano between 2013 and 2013
300 mil
respostas
Exercícios
13. Escreva uma consulta que liste o titulo e ano
dos livros publicados entre 2000 e 2016. Teste a
consulta.
14. Escreva uma consulta que lista o autor e ano da
procura pela palavra young no título dos livros para
livros publicados entre 2000 e 2016. Use o
comando like. Teste a consulta.
15. Escreva uma consulta que lista o autor e ano da
procura pelo nome do autor de livros como Daniel
publicados entre 2000 e 2016. Use o comando like.
Teste a consulta.
Escreva as consultas acima usando o comando between
Exercícios – Respostas
-- 13. -- 15. select autor, ano
select l.titulo, ano from livrosTemp
from livrosTemp l where autor like '%Daniel%'
where ano between 2000 and ano between 2000 and 2016
and 2016 limit 100 limit 100
-- 14.
select autor, ano
from livrosTemp
where titulo like '%young%’
and ano between 2000 and 2016
limit 100
Sintaxe básica
• Campos Vazios: IS NULL (IS NOT NULL)
Recuperar todos os livros em que não há um nome de autor informado
select *
from livrostemp A consulta não retornou
where titulo is null nenhum registro
select *
from livrostemp
where titulo is not null
limit 10
Exercícios
select titulo
from livrostemp
where ano > 2000
limit 1
select titulo
from livrostemp
where ano >= 2000
limit 1
Sintaxe básica
• Operadores de comparação
– Maior (ou igual)
– Menor (ou igual)
– Igual
– Diferente
select titulo
from livrostemp
where ano <= 2000
limit 1 A consulta não retornou
select titulo nenhum registro
from livrostemp
where ano < 2000
limit 1
Sintaxe básica
• Operadores de comparação
– Maior (ou igual)
– Menor (ou igual)
– Igual
– Diferente
select titulo
A consulta não retornou nenhum
from livrostemp
registro
where ano = 2000
limit 1
select titulo
from livrostemp
where ano <> 2000
limit 1
Sintaxe básica
• Operadores Aritméticos
– Adição +
– Subtração - select 10000 * 1.3
– Multiplicação *
– Divisão /
• Aplicados diretamente a valores numéricos ou a atributos com
domínio numérico