3
1 Banco de Dados – Comandos DML do MySQL – PARTE 1 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 Curso Técnico em Informática – 3º Semestre Disciplina: Banco de Dados Professor: Arley Rodrigues Semestre: 2014.1 Turno: Tarde Data: 03/09/2014

Sql - Comandos dml do mysql - parte 1

Embed Size (px)

DESCRIPTION

As diversas formas de usar o SELECT no Mysql

Citation preview

Page 1: Sql - Comandos dml do mysql - parte 1

1 Banco de Dados – Comandos DML do MySQL – PARTE 1

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

Curso Técnico em Informática – 3º Semestre Disciplina: Banco de Dados Professor: Arley Rodrigues Semestre: 2014.1 Turno: Tarde Data: 03/09/2014

Page 2: Sql - Comandos dml do mysql - parte 1

2 Banco de Dados – Comandos DML do MySQL – PARTE 1

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:

Page 3: Sql - Comandos dml do mysql - parte 1

3 Banco de Dados – Comandos DML do MySQL – PARTE 1

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)