Poesiamodernismo fase dois. 1930 prosa e poesiapptx
Sql - Comandos dml do mysql - parte 1
1. Curso Técnico em Informática – 3º Semestre
Disciplina: Banco de Dados
Professor: Arley Rodrigues
Semestre: 2014.1 Turno: Tarde Data: 03/09/2014
BANCO DE DADOS MySQL
COMANDOS DML – 1ª Parte
O Comando SELECT é o responsável por mostrar as informações gravadas no Banco de Dados. Inicialmente
seu uso é bastante simples e intuitivo, mas quando as requisições exigem o tratamento de informações
entre várias tabelas, os comandos passam a ter uma grande complexidade.
1. Selecionando atributos (Projeção):
SELECT <lista de atributos> FROM <tabela>
Exemplo:
Listar nome e salário de todos os empregados
SELECT Nome, Salário FROM Empregado
2. Selecionando todos os atributos
SELECT * FROM <tabela>
Exemplo:
Listar o conteúdo de Empregado
SELECT * FROM Empregado
3. Selecionando tuplas da tabela
SELECT <lista de atributos> FROM <tabela> WHERE <condição>
Onde condição: <nome atributo> <operador> <valor>
Operadores Relacionais: =, <>, <, <=, >, >=
Operadores Lógicos: AND, OR e NOT
Exemplos:
Listar nome e sexo dos empregados do departamento 15.
SELECT Nome, Sexo FROM Empregado WHERE Num-Dep = 15
Listar nome e sexo dos empregados do departamento 15 com salário > R$ 1.000,00
SELECT Nome, Sexo FROM Empregado WHERE Num-Dep = 15 AND Salário > 1000
4. Operadores BETWEEN e NOT BETWEEN:
Substituem o uso dos operadores <= e >=
Como usar: ... WHERE <nome atributo> BETWEEN <valor1> and <valor2>
Exemplo:
Listar os empregados com salário entre R$ 1.000,00 e R$ 2.000,00
SELECT * FROM Empregado WHERE Salário BETWEEN 1000 and 2000
1 Banco de Dados – Comandos DML do MySQL – PARTE 1
2. 5. Operadores LIKE e NOT LIKE:
Só se aplicam sobre atributos do tipo char. Operam como = e <>, utilizando os símbolos:
% (substitui uma palavra) e _ (substitui um caracter).
Como usar:
...WHERE <nome atributo> LIKE <valor1>
Exemplo:
Listar os empregados que tem como primeiro nome ‘José’
SELECT Nome FROM Empregado WHERE Nome LIKE ‘José%’
6. Operadores IN e NOT IN:
Procuram dados que estão ou não contidos em um dado conjunto de valores.
Como usar:
... WHERE <nome atributo> IN <valores>
Exemplo:
Listar o nome e data de nascimento dos dependentes com grau de parentesco ‘M’ ou ‘P’
SELECT Nome, Data-Nasc FROM Dependentes WHERE Grau-P IN (‘M’, ‘P’)
7. Operadores IS NULL e IS NOT NULL:
Identificam valores nulos dos atributos.
Como usar:
... WHERE <nome atributo> IS NULL
Exemplo:
Listar os projetos que não tenham local definido
SELECT * FROM Projeto WHERE Local IS NULL
8. Ordenando os dados selecionados (ORDER BY)
SELECT <lista atributos> FROM <tabela> [WHERE <condição>] ORDER BY <Nome atributo> {ASC | DESC}
Exemplos:
Listar todos os empregados ordenados ascendentemente por nome.
SELECT * FROM Empregado ORDER BY Nome
Listar todos os empregados ordenados descendentemente por salário
SELECT * FROM Empregado ORDER BY Salário DESC
9. Realizando Cálculos no MySQL
Pode-se criar um campo que não pertença à tabela, a partir de cálculos sobre atributos da tabela. Estes
cálculos são processados pelo próprio SGBD.
Exemplo:
2 Banco de Dados – Comandos DML do MySQL – PARTE 1
3. Mostrar o novo salário dos empregados, calculado com base no reajuste de 60% para os que ganham
abaixo de R$ 1.000,00.
SELECT Nome, Salário * 1.60 AS ‘Novo Salário’ FROM Empregado WHERE Salário < 1000
10. Funções pré-definidas do MySQL
Temos diversas funções que podem ser utilizadas dentro do próprio SGBD. Abaixo 5 das principais funções.
Comandos: MAX, MIN, SUM, AVG, COUNT
Exemplos:
Mostrar o valor do maior salário dos empregados
SELECT MAX (Salário) FROM Empregado
Mostrar qual o salário médio dos empregados
SELECT AVG (Salário) FROM Empregado
Quantos empregados ganham mais de R$1.000,00?
SELECT COUNT (*) FROM Empregado WHERE Salário > 1000
11. Cláusula DISTINCT
Elimina tuplas duplicadas do resultado de uma consulta.
Exemplo:
Quais os diferentes salários dos empregados?
SELECT DISTINCT Salário FROM Empregado
EXERCÍCIOS
De acordo com o Esquema Textual abaixo resolva:
Funcionarios (Codigo, PrimeiroNome, SegundoNome, UltimoNome, DataNasci, CPF, RG, Endereco, CEP,
Cidade, Fone, CodigoDepartamento, Funcao, Salario)
Departamentos (Codigo, Nome, Localizacao, CodigoFuncionarioGerente)
1. Listar nome e sobrenome ordenado por sobrenome.
2. Listar todos os campos de funcionários ordenados por cidade
3. Liste os funcionários que têm salário superior a R$ 1.000,00 ordenados pelo nome completo.
4. Liste a data de nascimento e o primeiro nome dos funcionários ordenados do mais novo para o mais
velho.
5. Liste o total da folha de pagamento.
6. Liste a quantidade de funcionários desta empresa.
7. Liste o salário médio pago pela empresa.
8. Liste o nome completo de todos os funcionários que não tenham segundo nome.
9. Liste os nomes dos funcionários que moram em Recife e que exerçam a função de Telefonista .
10. Liste as cidades onde nasceram os funcionários, sem repetição.
11. Liste o nome do departamento onde o código do gerente é igual a 2.
12. Liste o nome do funcionário que tem o maior salário na empresa (select dentro do outro)
3 Banco de Dados – Comandos DML do MySQL – PARTE 1