You are on page 1of 16

BANCO DE DADOS

Prof. Wildemarkes Almeida


Tópicos
• Select Distinct
• Qualificação de Atributos
• Operação Union
• Operador LIKE
• Operador Between
• Order By, Asc e Desc

2
SELECT DISTINCT
• Elimina as tuplas duplicadas na consulta de uma tabela
• Exemplo: Recuperar somente os estados que as empresas realizam
distribuição de produtos.

Sem o discintc com discintc 3


Qualificação de Atributos
• Em SQL, o mesmo nome pode ser usado para dois ou mais atributos, desde
que estejam em relações diferentes.
• Se isso acontecer, e uma consulta em múltiplas tabelas se referir a dois ou
mais atributos com o mesmo nome, é preciso qualificar o nome do atributo
da relação, para evitar ambiguidade.

4
Qualificação de Atributos
• Este procedimento é realizado prefixando o nome da relação ao nome do
atributo e separando os dois por um ponto.
• Exemplo_1: Selecionar o nome da cidade e de todas as distribuidoras

Observe que o ERRO 1052 é referente a ambiguidade de atributos na consulta

5
Qualificando Atributos
• Observe a pesquisa sendo realizada com qualificadores

Um “apelido ou variável de tupla” é declarado logo após a palavra-chave AS como mostrado na figura acima

Utilize os qualificadores toda vez que for preciso realizar uma consulta em um banco onde existem tabelas com atributos
iguais, ou seja, com o mesmo nome
6
Operação UNION

• Na operação de union (união) espera-se eliminar as tuplas duplicadas na


consulta de um conjunto de tabelas
• Exemplo_2: Recuperar o nome do estado que os professores e alunos
nasceram

7
Operador LIKE
• O operador LIKE é usado em uma cláusula WHERE para pesquisar um
padrão especificado em uma coluna

Exemplo_3: recuperar todos os alunos que contém o nome ‘Maria’;

O % (percentual) é utilizado para especificar os caracteres a serem pesquisados


8
Operador BETWEEN
• O operador BETWEEN é usado para selecionar valores dentro de um
intervalo
• Os valores podem ser números, texto ou datas.

• Exemplo_4: recuperar todos os professores cujo salário está entre 3000 e


4500 reais.

9
ORDER BY, ASC e DESC
Ordem nas consultas
• Order by – permite o resultado das tuplas de formas ordenada por atributos
• A ordem padrão desta consulta é crescente
• Exemplo_5: selecionar a lista de professores e ordenar por nome

• Mas pode ser modificada pela palavra chave DESC


ASC DESC 10
Resumo sobre consultas

• A cláusula select lista os atributos a serem recuperados


• A cláusula from especifica todas as relações(tabelas) necessária na consulta
• A cláusula where identifica as condições para selecionar as tuplas dessas relações, incluindo
condições de junção, se necessário
• Order by especifica uma ordem para exibir os resultados de uma consulta
11
Exercício – 13
1. Adicionar a coluna estado na tabela professor e aluno do banco dbsenai
2. Cadastrar os professores e alunos de acordo com seus respectivos estados de
acordo com o arquivo em rede Ex_13 - estados_professores_alunos.txt
3. Renomear o atributo nome_aluno para nome da tabela aluno e
nome_professor para nome da tabela professor
4. Faça uma consulta para verificar somente os estados que os alunos nasceram,
não pode haver campos repetidos a ordem deverá ser crescente por estado

12
Exercício - 13
5. Faça uma pesquisa utilizando operador UNION que retorne o nome do
estado da tabela professor e aluno
6. Faça uma consulta que retorne todos os professores que contém sobrenome
Torres
7.Buscar todos os professores que recebem salário entre 2300 e 3000;

13
Especificado Restrições – NOT NULL
• Como a SQL permite valor NULL como valor de atributos, uma restrição
NOT NULL pode ser especificada se o valor NULL não for permitido para
determinado atributo.
• Ele é especificado de maneira implícita par o atributos de chaves primárias
• Mas pode ser utilizado para demais atributos cujo valores não podem ser
nulos

O especificador de restrição NOT NULL indica que campo não pode ser NULL 14
Especificador de Restrição - DEFAULT
• É possível definir um valor padrão para um atributo anexando a cláusula
DEFAULT <valor> a uma definição de atributo
Observe que neste exemplo a
tabela Filial foi criada com seu
atributo matriz definido ‘Grupo
Quitale’ como DEFAUT

Ao executar o comando DESCRIBE é


exibido o esquema da tabela e pode ser
observado o valor padrão da coluna
Matriz
15
Referências
• http://dev.mysql.com/doc/
• Navathe Elmasri, Sistemas de Banco de Dados
• http://ftp.nchu.edu.tw/MySQL/doc/refman/4.1/pt/logical-operators.html
• http://www.w3resource.com/mysql/aggregate-functions-and-
grouping/aggregate-functions-and-grouping-sum-with-group-by.php

16

You might also like