40
1 Introdução a Banco de Dados

Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

  • Upload
    others

  • View
    0

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

1

Introdução a

Banco de Dados

Page 2: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

2

Aula 8:

Conceitos Básicos

de SQL: DML

Page 3: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

3

DML (Data manipulation Language):

Os principais comandos são:

Insert; (Inserir tuplas)

Update; (Alterar tuplas)

Delete; (Excluir tuplas)

Select; (Pesquisar dados nas tuplas)

Page 4: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

4

DML: SELECT

O Comando SELECT é com certeza o comando mais utilizado em sistemas comerciais, é através dele que são feitas pesquisas no banco. O Select simples consiste de duas clausulas:

SELECT e FROM

Page 5: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

5

DML: SELECT

SELECT: É o comando de consulta, é aqui onde é definido o que se espera como resposta da pesquisa.

FROM: Identifica onde se encontra as informações pesquisas, ou seja, em que tabelas os dados estão armazenados.

Page 6: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

6

DML: SELECT

Exemplo de um select simples:

select cod,nome,numeroacesso

from teste1

Comando

SELECT

Colunas

pesquisadas

Comando

FROM

Tabela onde se

encontra as

colunas

pesquisadas

Page 7: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

7

Page 8: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

8

DML: SELECT

Outra forma de fazer a mesma pesquisa é utilizar o * no select ao invés das colunas, veja:

select *

from teste1

Comando

SELECT Não declarando as colunas

Comando

FROM

Tabela onde se

encontra as

colunas

pesquisadas

Page 9: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

9

Page 10: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

10

O resultado da pesquisa (select) irá seguir a ordem definida no comando SELECT, você pode mudar a ordem ou eliminar alguma coluna do resultado final. Veja o exemplo:

select numeroacesso, cod

from teste1

Observe que não

estamos

incluindo o

nome, que é

uma das colunas,

e a ordem é

diferente da

tabela

Comando

SELECT

Colunas

pesquisadas

Comando

FROM

Tabela onde se

encontra as

colunas

pesquisadas

Page 11: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

11

Page 12: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

12

Cláusula WHERE: Os resultados de comandos como apresentados nos slides anteriores, possuem todas as linhas de uma tabela. No entanto, na maioria das consultas, queremos consultar somente as informações referentes a algumas linhas. Para isso utilizamos a cláusula WHERE.

Page 13: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

13

Cláusula WHERE

WHERE é sempre seguida de uma expressão lógica, a qual pode conter operadores comparativos (>,<,=,>=,<=,<>), Operadores lógicos (AND, OR e NOT) e predicados próprios da linguagem SQL, tais como: IS (NOT) NULL, IS (NOT) LIKE, IN e EXISTS.

Os operadores lógicos AND e OR são utilizados para conectar comparações.

Page 14: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

14

Operadores Relacionais:

= Igual

!= ou <> Diferente

< Menor

<= Menor Igual

> Maior

>= Maior Igual

Page 15: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

15

Operadores Lógicos:

AND E

OR OU

NOT Não

Page 16: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

16

Operadores Especiais:

IS NULL: verifica se o valor é NULO

Ex.: Select * from produtos where estoque is null;

IS NOT NULL: verifica se o valor NÃO é nulo

Ex.: Select * from produtos where estoque is not null;

BETWEEN: “entre”, determina um intervalo entre

dois valores

Ex.: Select * from produtos where preco BETWEEN 15

and 20;

Page 17: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

17

LIKE: utilizado para buscar strings

[OLIVEIRA, pág. 111]

LIKE ‘A%’ Todas as palavras que iniciem com A

LIKE ‘%A’ Todas as palavras que terminem com A

LIKE ‘%A%’ Todas as palavras que tenham A em qualquer posição

LIKE ‘A_’ String de 2 caracteres, em que o primeiro é A e o segundo seja

qualquer outro

LIKE ‘_A’ String de 2 caracteres, em que o primeiro é qualquer caractere e o

segundo é A

LIKE ‘_A_’ String de 3 caracteres, em que o caractere central é A

LIKE ‘%A_’ Todas as palavras que possuam A como penúltimo caractere

LIKE ‘_A%’ Todas as palavras que possuam A como segundo caractere

Page 18: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

18

Cláusula WHERE

Exemplo:

select nome, idade

from teste2

where nome = 'Felipe Silva'

Comando

SELECT

Colunas

pesquisadas

Comando

FROM

Tabela onde se

encontra as

colunas

pesquisadas

Comando

WHERE Condição

Page 19: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

19

Tabela

completa

Comando

SQL

Resultado da

Pesquisa

Page 20: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

20

Comando

SQL

Resultado da

Pesquisa

Outros exemplos de Pesquisas utilizando o WHERE:

Comando

SQL

Resultado da

Pesquisa

Page 21: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

21

Comando

SQL

Resultado da

Pesquisa

Outros exemplos de Pesquisas utilizando o WHERE:

Comando

SQL

Resultado da

Pesquisa

Page 22: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

22

Funções Agregadas:

Na linguagem SQL são definidas várias funções

que operam sobre grupos de dados. Tais

funções, usualmente, realizam operações ou

comparações sobre um conjunto de dados e

retornam como resultado, uma relação de

apenas uma linha e uma coluna. São

chamadas funções Agregadas, comumente,

recebem apenas um parâmetro.

Page 23: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

23

Funções Agregadas:

AVG: calcula a média;

COUNT: retorna o total de tuplas;

MAX: retorna o maior valor;

MIN: retorna o menor valor;

SUM: somatório;

Page 24: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

24

COUNT

Muitas vezes é necessário contar a quantidade

de linhas que satisfazem determinada

condição. Para isso é utilizado a função

COUNT.

A função COUNT recebe um parâmetro, que

pode ser o nome da coluna ou *, e retorna um

número.

Page 25: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

25

COUNT

Exemplo:

select count (nome)

from teste2

Select

COUNT Coluna

From Tabela

Page 26: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

26

TABELA

SQL

Resultado do

COUNT

Page 27: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

27

SUM

Outra operação comumente utilizada é a soma.

Para realizar a soma dos valores de uma

coluna para um grupo de dados, utilizamos a

função SUM.

A função SUM retornará os somatório dos

valores não-nulos da coluna utilizada como

parâmetro. Retornará NULL se todos os

valores desta coluna forem nulos ou se

nenhum valor atender ao critério de seleção.

Page 28: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

28

SUM

Exemplo:

select sum (salario)

from teste1

Select

SUM Coluna

From Tabela

Page 29: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

29

TABELA

SQL

Resultado do

SUM

Page 30: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

30

AVG

Para obter a média aritmética dos valores de

uma coluna, utilizamos a função AVG,

informando, como parâmetro para a mesma,

o nome da coluna para a qual desejamos

obter a média.

A função AVG retorna a média considerando

apenas os valores não-nulos da coluna

especificada.

Page 31: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

31

AVG

Exemplo:

select avg (salario)

from teste1

Select

AVG Coluna

From Tabela

Page 32: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

32

TABELA

SQL

Resultado do

AVG

Page 33: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

33

MAX

Para obter o valor máximo de uma coluna em

um conjunto de dados, utilizamos a função

MAX. Assim como a função AVG, MAX

recebe um parâmetro e retorna o valor NULL

se em todas as linhas da tabela consultada o

valor da coluna for nulo, ou se nenhuma linha

atender ao critério de seleção.

Page 34: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

34

MAX

Exemplo:

select max (salario)

from teste1

Select

MAX Coluna

From Tabela

Page 35: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

35

TABELA

SQL

Resultado do

MAX

Page 36: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

36

MIN

Em oposição a função MAX, temos a função MI,

que retorna o menor valor de uma coluna

para a tabela específica.

Page 37: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

37

MIN

Exemplo:

select min (salario)

from teste1

Select

MIN Coluna

From Tabela

Page 38: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

38

TABELA

SQL

Resultado do

MIN

Page 39: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

39

BIBLIOGRAFIA:

[SILBERSCHATZ,1999] SILBERSCHATZ,A., KORTH,H. F.,

SUDARSHAN,S.; Sistema de Banco de Dados, 3ª ed.,Editora

Makron Books, São Paulo, 1999. (Capítulo 4).

[ELMASRI, 2005] ELMASRI, R., NAVATHE, S. B. ; Sistema de

Banco de Dados, 4ª ed., Editora Makron Books, São Paulo,

2005. (Capítulo 8).

[DATE, 2004] DATE, C. J.; Introdução a Sistemas de Banco

de Dados, 8ª ed., Editora Campus, São Paulo 2004. (Capítulo 4).

Page 40: Introdução a Banco de Dados · incluindo o from teste1 Observe que não estamos nome, que é uma das colunas, e a ordem é diferente da tabela Comando Colunas pesquisadas Comando

40

BIBLIOGRAFIA:

[COSTA,2007] COSTA,Rogério Luís de C.; SQL Guia Prático,

2ª ed.,Editora Brasport, Rio de Janeiro, 2007. (Capítulo 3 e 4).

[MACHADO, 2008] MACHADO,Felipe, ABREU,Maurício;

Projeto de Banco de Dados, 15ª ed., Editora ERICA, São Paulo,

2008. (Capítulo 14).

[OLIVEIRA, 2002] OLIVEIRA,Celso Henrique.; SQL Guia

Prático, Editora Novatec, São Paulo 2002, Capítulo 6).