Buscar

MySQL Consulta Básica parte 01

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 45 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 6, do total de 45 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 9, do total de 45 páginas

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Prévia do material em texto

1 
Banco de Dados II – Prof Tavares 1 
Banco de Dados II 
 
SQL Básica 
2 
Banco de Dados II – Prof Tavares 2 
Sistema de Banco de Dados 
Definição 
do BD 
(Meta-dados) 
BD 
armazenado 
Consultas / Programas de Aplicação 
Software para processar 
consultas / programas 
Software para acessar 
dados armazenados 
Usuários / Programadores 
Sistema de BD 
SGBD 
Banco de Dados I – Prof Tavares 
Requisitos 
de Dados 
Projeto Conceitual 
Projeto Lógico 
Projeto Físico 
Coleta/Especificação 
de Requisitos 
Requisitos 
Funcionais 
Análise Funcional 
Projeto Funcional 
Programação 
Programa de 
aplicação de BD SGBD 
Programa de 
aplicação de BD 
Programa de 
aplicação 
dados 
e 
regras 
Mundo 
Real 
4 
Banco de Dados II – Prof Tavares 
Em princípio, qualquer sublinguagem de dados é, na realidade, 
uma combinação de pelo menos duas linguagens subordinadas: 
• Linguagem de definição de dados (LDD ou DDL - Data 
Definition Language), que dá suporte à definição ou à 
"declaração" de objetos dos bancos de dados 
• Linguagem de manipulação de dados (LMD ou DML - Data 
Manipulation Language), que admite o processamento ou a 
"manipulação" desses objetos. 
• CRUD: create / read / update / delete. 
Linguagem SQL 
5 
Banco de Dados II – Prof Tavares 5 
Linguagem SQL 
• O nome "SQL" significa "Structured Query Language" - 
Linguagem Estruturada de Pesquisa. 
• Essa linguagem, de grande utilização, teve seus fundamentos 
no modelo relacional de Codd (l970). Sua primeira versão 
recebeu o nome de SEQUEL ("Structured English Query 
Language"), sendo definida por D. D. CHAMBERLIN, entre 
outros, em 1974, nos laboratórios de pesquisa da IBM 
(Califórnia). 
• Em 1975, foi implementado um protótipo de aplicação dessa 
nova linguagem. Entre 1976 e 1977, o SEQUEL foi revisado e 
ampliado, e teve seu nome alterado para "SQL" por razões 
jurídicas. 
6 
Banco de Dados II – Prof Tavares 6 
Linguagem SQL 
• A SQL se tornou um padrão de fato, no mundo dos ambientes 
de banco de dados relacionais. 
• Em 1982, o American National Standard Institute (ANSI) tornou 
a SQL padrão oficial de linguagem em ambiente relacional. 
• Infelizmente, como todo padrão que se preze, existem hoje 
vários dialetos SQL, cada um, evidentemente, tentando ser 
mais padronizado que o outro. 
• A linguagem SQL foi desenvolvida especialmente para o 
ambiente relacional, podendo ser adaptada a qualquer 
ambiente não relacional. 
7 
Banco de Dados II – Prof Tavares 7 
Linguagem SQL 
• Linguagem interativa de consulta (query AdHoc) 
• Linguagem de programação para acesso a banco de 
dados 
• Linguagem de administração de banco de dados 
• Linguagem cliente/servidor 
• Linguagem para banco de dados distribuído 
• Caminho de acesso a outros bancos de dados em 
diferentes máquinas 
8 
Banco de Dados II – Prof Tavares 8 
Vantagens da Linguagem SQL 
• Independência de fabricante - A SQL é oferecida em 
praticamente todos os SGBD'S, e os que ainda não têm estão 
se encaminhando para lá. Com isso posso mudar de SGBD 
sem me preocupar com o novo que vai chegar 
• Portabilidade entre computadores - A SQL pode ser utilizada 
desde um computador pessoal, passando por uma estação de 
trabalho, até um computador de grande porte 
• Redução dos custos com treinamento - Baseado no item 
anterior, as aplicações podem se movimentar de um ambiente 
para o outro sem que seja necessária uma reciclagem da 
equipe de desenvolvimento 
9 
Banco de Dados II – Prof Tavares 9 
Vantagens da Linguagem SQL 
• Inglês estruturado de alto nível - A SQL é formada por um 
conjunto bem simples de sentenças em inglês, oferecendo um 
rápido e fácil entendimento 
• Consulta interativa - A SQL provê um acesso rápido aos 
dados, fornecendo respostas ao usuário, a questões 
complexas, em minutos ou segundos 
• Múltiplas visões dos dados - A SQL permite ao criador do 
banco de dados levar diferentes visões dos dados a diferentes 
usuários 
• Definição dinâmica dos dados - Por meio da SQL, podem-se 
alterar, expandir ou incluir, dinamicamente, as estruturas dos 
dados armazenados com a máxima flexibilidade 
10 
Banco de Dados II – Prof Tavares 10 
Slide Title 
10 
February 2014 
11 
Banco de Dados II – Prof Tavares 11 
Operações SELEÇÃO e PROJEÇÃO 
 (a) 
A Álgebra Relacional 
e o Cálculo Relacional 
12 
Banco de Dados II – Prof Tavares 12 
 Resultados de uma seqüência de operações. 
 (a) 
 
 (b) Usando as relações intermediárias e renomeando os atributos. 
A Álgebra Relacional 
e o Cálculo Relacional 
13 
Banco de Dados II – Prof Tavares 
O comando SELECT tem palavras-chaves em um comando 
básico: 
SELECT Especifica as colunas 
FROM - Especifica as tabelas 
WHERE - Especifica as linhas. 
SQL / COMANDO SELECT 
14 
Banco de Dados II – Prof Tavares 
15 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
Selecionando Colunas da Tabela 
select <NOME(S) DA(S) COLUNA(S)> from <TABELA> 
 
Consulta: Listar todas as colunas de todos os PAÍSES. 
 select * 
 from customers 
16 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
Selecionando Colunas da Tabela 
 
 
Consulta: Listar id, nome e telefone dos clientes. 
select customerNumber, customerName, phone 
from customers 
17 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
Alterando o Heading da coluna 
 
select customerName as nome, phone as telefone 
from customers 
18 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
Operadores Aritméticos 
Operadores aritméticos podem ser usados sobre 
qualquer coluna numérica. 
 + Adição 
 - Subtração 
 / Divisão 
 * Multiplicação 
19 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
 Consulta simples: 
select productname, buyprice * 1.2 
from products 
Operadores Aritméticos 
20 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
 Consulta simples: 
SELECT productName, buyprice 
FROM products 
where buyPrice < 100 
Operadores Aritméticos 
21 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
Consulta: Listar os empregados vendedores. 
SELECT * 
FROM employees 
where jobTitle = "SALES REP" 
... 
SELECT * 
FROM employees 
where jobTitle = "Sales Rep" 
Operadores de Comparação 
22 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
Consulta: Listar os clientes que trabalham na Polônia. 
 select * from CUSTOMERS 
 where COUNTRY = 'Poland' 
 
Consulta: Listar o nome, telefone e o país dos clientes não residentes nos 
USA 
select customerNumber, phone, country 
from CUSTOMERS 
where COUNTRY <> 'USA‘ 
Operadores de Comparação 
23 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
select concat(customerName, “ – “, phone) 
from CUSTOMERS 
where COUNTRY <> 'USA' 
 
 
Operador de Concatenação 
24 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
AND ("e" ) OR ("ou" ) NOT (negação) 
 
Consulta: Listar os produtos com preço maior ou igual a 
$100 
select * 
from PRODUCTS 
where not (BUYPRICE < 100) 
Operadores Lógicos 
25 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
AND ("e" ) OR ("ou" ) NOT (negação) 
 
Consulta: Listar os produtos com preços entre $40 e $100, 
inclusive. 
 select * 
 from products 
 where buyPrice >= 40 and buyPrice <=100 
 
Operadores Lógicos26 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
AND ("e" ) OR ("ou" ) NOT 
(negação) 
 
Consulta: Listar os produtos com preços fora do 
intervalo de $ 40 e $ 100. 
 select * 
 from products 
 where buyprice < 40 or buyprice > 100 
Operadores Lógicos 
27 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
AND ("e" ) OR ("ou" ) NOT (negação) 
 
Consulta: Listar os produtos 'Motorcycles' e 'Classic Cars‘ 
que custam acima de $50) 
select * 
from products 
where (productline = 'motorcycles' or productline = 'classic cars') 
 and buyprice > 50 
Operadores Lógicos 
28 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
Consulta: Listar os produtos o intervalo de $50 a $100. 
select * from products 
where buyprice between 50 and 100 
Operadores Between e NOT Between 
29 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
Consulta: Listar os produtos fora do intervalo de $50 a 
$100. 
select * from products 
where buyprice not between 50 and 100 
 
Operadores Between e NOT Between 
30 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
Consulta: Listar os clientes cujos nomes iniciam entre 
A e J. 
 select * 
 from customers 
where customerName between 'A%' and 'J%' 
Operadores Between e NOT Between 
31 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
WHERE <nome da coluna> <NOT> LIKE <valor> 
Os operadores LIKE e NOT LIKE só trabalham sobre 
colunas que sejam do tipo CHAR. 
% - substitui todos os caracteres a partir da posição 
indicada 
_ - substitui qualquer caractere na posição indicada 
 
Operadores LIKE e NOT LIKE 
32 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
Exemplos: 
• 'abc%' - strings começando com 'abc' 
• '%xyz' - strings terminando com 'xyz' 
• '%aaa%' - strings contendo 'aaa' 
• '___' - strings contendo exatamente três caracteres 
• 'a_b%' - strings iniciando com 'a', seguido de um caracter 
simples, seguido de 'b‘ e seguido de zero ou mais 
caracteres. 
Operadores LIKE e NOT LIKE 
33 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
Consulta: Listar os clientes dos países que iniciam 
com a letra “S”. 
select * 
from customers 
where country like 'S%' 
Operadores LIKE e NOT LIKE 
34 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
Consulta: Listar os clientes dos países que não 
iniciam com a letra “S”. 
select * 
from customers 
where country not like 'S%' 
Operadores LIKE e NOT LIKE 
35 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
Consulta: Listar os clientes com endereços que 
possuem a palavra “Long” 
select * 
from customers 
where addressLine1 like '%Long%' 
Operadores LIKE e NOT LIKE 
36 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
WHERE <nome da coluna> <NOT> IN <valores> 
 
Consulta: Listar os clientes americanos e franceses 
select * 
from customers 
where country in ('USA', 'France') 
 
Operadores baseados em listas IN e NOT IN 
37 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
WHERE <nome da coluna> <NOT> IN <valores> 
 
Consulta: Listar os clientes não americanos nem 
franceses 
select * 
from customers 
where country not in ('USA', 'France') 
 
Operadores baseados em listas IN e NOT IN 
38 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
WHERE <nome da coluna> IS NULL 
WHERE <nome da coluna> IS NOT NULL 
 
Consulta: Mostrar os clientes sem o 2º endereço cadastrado. 
select * 
from CUSTOMERS 
where addressLine2 is null 
Operadores IS NULL e IS NOT NULL 
39 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
 
Consulta: Mostrar os clientes com o 2º endereço cadastrado. 
select * 
from CUSTOMERS 
where addressLine2 is not null 
Operadores IS NULL e IS NOT NULL 
40 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
Consulta: Mostrar os pedidos não despachados e em 
processamento 
select * 
from orders 
where shippedDate is null 
 and status in ('In Process') 
Operadores IS NULL e IS NOT NULL 
41 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
SELECT <nome da(s) coluna(s)> 
FROM <tabela> 
WRERE <condição(ões)> 
ORDER BY columnA ASC|DESC, columnB ASC|DESC, ... 
 
Ordenando os Dados Selecionados 
42 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
Consulta: Listar os nomes dos clientes em ordem 
crescente. 
 
select customerName 
from customers 
order by customerName asc 
Ordenando os Dados Selecionados 
43 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
Consulta: Listar os países dos clientes, que possuem 
estados cadastrados, em ordem ascendente de país e, 
depois, descendente de estado. 
 
SELECT country, state 
FROM customers 
where state is not null 
order by country, state desc 
Ordenando os Dados Selecionados 
44 
Banco de Dados II – Prof Tavares 
SQL / COMANDO SELECT 
-- Mostra as duas primeiras linhas 
SELECT * FROM products ORDER BY buyPrice LIMIT 2 
 
-- Pula as duas primeiras linhas e mostra a próxima linha 
SELECT * FROM products ORDER BY buyPrice LIMIT 2, 1 
 
Cláusula LIMIT 
45 
Banco de Dados II – Prof Tavares 
Fim

Outros materiais