Base de Dados 1
Hélio Martins
Agenda
Introdução ao SQL
Famílias do SQL
Exercícios
Introdução ao SQL
Apareceu no início da década de 1970
Desenvolvida por um laboratório de Investigação da
IBM
Em 1986 surg...
Linguagem SQL
Criar, Alterar, e Remover todas as componentes de
uma Base de Dados, como tabelas, views, índices,
etc.
Inse...
Familias do SQL
DML – Data Manipulation Language – Permite
manipular os dados – Inserir, Apagar, Seleccionar e
actualizar....
Famílias do SQL
DML

DDL

DCL

SELECT

CREATE

GRANT

INSERT

ALTER

REVOKE

UPDATE

DROP

DENY

DELETE
…

A

sintaxe

bás...
Comando SELECT
A interrogação de qualquer base de dados relacional fazse sempre utilizando o comando SELECT.
A sintaxe é a...
Comando SELECT
Exemplos
código
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013

local
Tarraf...
Seleccionar todos os
registos
Para sabermos toda a informação existente na tabela,
teremos que seleccionar a informação ex...
Seleccionar todas as
colunas
Se se pretender, como no exemplo anterior,
seleccionar todas as colunas da tabela, então, par...
SELECT – Clausula
Where
A operação de restrição permite restringir o número
de linhas a apresentar.
Para podermos restring...
Operadores
Operador

Descrição

Exemplo

Resultado

=

Igual a

7=5

FALSE

>

Maior que

7>5

TRUE

<

Menor que

7<5

FA...
Exemplos
id

nome

idade

salário

telefone

códigoLocal

42

António Dias

43

792000

2619043

1

5

Célia Morais

26

5...
SELECT ALL
4.3.5 Eliminação de repetições (DISTINCT e ALL)
Problema: Selecionar o conjunto das ilhas existentes na
tabela ...
SELECT DISTINCT
SELECT DISTINCT ilha
FROM localidade
Remove os duplicados
SELECT com expressões
O SELECT permite, selecção de expressões ou
mesmo a selecção de constantes.
Seleccione o nome e idad...
Renomear Colunas
O nome da coluna que resulta da expressão é Expr...Este
nome pode variar de sistema para sistema e é atri...
SELECT – Clausula
ORDER BY
A ordenação é baseada no valor do código ASCII de
cada carácter. Assim, os dígitos aparecem ant...
Order By
SELECT campo1, campo2,…, campon
FROM tabela1, …, tabela n
[WHERE condição]
[GROUP BY …]
[HAVING …]
ORDER BY campo...
Ordenar uma coluna
A ordenação por coluna faz-se especificando, na
cláusula ORDER BY, qual a coluna pela qual se
pretende ...
Ordenar Varias colunas
Para se ordenar o resultado de um SELECT por mais
do que uma coluna, basta indicar, na cláusula
ORD...
Próximos SlideShares
Carregando em…5
×

Aula 6 sql - introdução

568 visualizações

Publicada em

Introdução ao SQL

0 comentários
1 gostou
Estatísticas
Notas
  • Seja o primeiro a comentar

Sem downloads
Visualizações
Visualizações totais
568
No SlideShare
0
A partir de incorporações
0
Número de incorporações
120
Ações
Compartilhamentos
0
Downloads
37
Comentários
0
Gostaram
1
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Aula 6 sql - introdução

  1. 1. Base de Dados 1 Hélio Martins
  2. 2. Agenda Introdução ao SQL Famílias do SQL Exercícios
  3. 3. Introdução ao SQL Apareceu no início da década de 1970 Desenvolvida por um laboratório de Investigação da IBM Em 1986 surgiu uma normalização da linguagem SQL, pela American National Standards Institute, continuam a existir pequenas diferenças na implementação desta linguagem comercial.
  4. 4. Linguagem SQL Criar, Alterar, e Remover todas as componentes de uma Base de Dados, como tabelas, views, índices, etc. Inserir, Alterar e Apagar dados. Interrogar a base de dados – Fazer Consultas. Controlar o acesso dos utilizadores à base de dados e as operações a que cada um deles pode ter acesso. Obter a garantia da consistência e integridade dos dados.
  5. 5. Familias do SQL DML – Data Manipulation Language – Permite manipular os dados – Inserir, Apagar, Seleccionar e actualizar. DDL – Data Definition Language – Utilizada para criar, apagar e alterar objectos como tabelas, consultas (views). DCL – Data Control Language – Permite controlar a segurança de dados definindo quem pode aceder cada operação em cada objecto.
  6. 6. Famílias do SQL DML DDL DCL SELECT CREATE GRANT INSERT ALTER REVOKE UPDATE DROP DENY DELETE … A sintaxe básica de comando DDL é: A sintaxe básica de um comando DCL é: CREATE <tipo> <nome><definição> CREATE TABLE um GRANT <operação> ON <nome do Clientes (Nome objeto> TO <usuário> CHAR(30), Telefone CHAR(8)) GRANT UPDATE ON Clientes TO João
  7. 7. Comando SELECT A interrogação de qualquer base de dados relacional fazse sempre utilizando o comando SELECT. A sintaxe é a seguinte: SELECT campo1, campo2,…, campoN FROM tabela1, …, tabela n [WHERE condição] [GROUP BY …] [HAVING …] [ORDER BY …] Os parêntesis retos indicam que essa componente é facultativo
  8. 8. Comando SELECT Exemplos código 00001 00002 00003 00004 00005 00006 00007 00008 00009 00010 00011 00012 00013 local Tarrafal Assomada Praia Ribeira Grande Tarrafal Praia Branca Mindelo São Pedro Tarrafal Ribeira Grande N. Cintra S. Felipe Porto Inglês ilha Santiago Santiago Santiago Santiago S. Nicolau S. Nicolau S. Vicente S. Vicente S. Antão S. Antão Brava Fogo Maio
  9. 9. Seleccionar todos os registos Para sabermos toda a informação existente na tabela, teremos que seleccionar a informação existente nas colunas Local e Ilha da tabela Localidade, o que traduzido para SQL viria a ser: SELECT códigoLocal, local, ilha FROM localidade
  10. 10. Seleccionar todas as colunas Se se pretender, como no exemplo anterior, seleccionar todas as colunas da tabela, então, para não termos que indicar cada uma das colunas, o nome de todas elas pode ser substituído pelo carácter asterisco (*). SELECT * FROM Localidade
  11. 11. SELECT – Clausula Where A operação de restrição permite restringir o número de linhas a apresentar. Para podermos restringir o conjunto de registos a apresentar, iremos utilizar outra cláusula do comando SELECT – a cláusula WHERE. SELECT … FROM … WHERE condição
  12. 12. Operadores Operador Descrição Exemplo Resultado = Igual a 7=5 FALSE > Maior que 7>5 TRUE < Menor que 7<5 FALSE >= Maior ou Igual que 7>=5 TRUE <= Menor ou Igual que 7<=5 FALSE < > Ou != Diferente de 7<>5 TRUE AND E OR ou NOT Negação
  13. 13. Exemplos id nome idade salário telefone códigoLocal 42 António Dias 43 792000 2619043 1 5 Célia Morais 26 536000 2693454 3 32 Florinda Simões 35 137000 1 37 Isabel Espada 28 86000 6 49 José António 17 210000 3 14 São Nascimento 35 220000 SELECT * FROM pessoa WHERE idade = 35 SELECT id, nome, salário FROM pessoa WHERE idade >= 30 AND idade <= 40 2318440 5 SELECT id, nome, salário FROM pessoa WHERE idade >= 18 SELECT id, nome, salário FROM pessoa WHERE idade < 30 OR idade > 40
  14. 14. SELECT ALL 4.3.5 Eliminação de repetições (DISTINCT e ALL) Problema: Selecionar o conjunto das ilhas existentes na tabela localidade. SELECT ilha FROM localidade Equivalente a SELECT ALL ilha FROM Localidade O resultado devolve ilhas repetidas
  15. 15. SELECT DISTINCT SELECT DISTINCT ilha FROM localidade Remove os duplicados
  16. 16. SELECT com expressões O SELECT permite, selecção de expressões ou mesmo a selecção de constantes. Seleccione o nome e idade de todas as pessoas. Selecione também a idade que irão ter daqui a um ano. O resultado deverá vir ordenado por nome. SELECT nome, idade, idade+1 FROM pessoa ORDER BY nome
  17. 17. Renomear Colunas O nome da coluna que resulta da expressão é Expr...Este nome pode variar de sistema para sistema e é atribuído automaticamente. Nota: O nome com que uma coluna ou expressão é representada no resultado de um SELECT pode ser alterado através da cláusula AS novo_nome a seguir às colunas ou expressões cujo título se pretende alterar. SELECT nome, idade AS idadeHoje, idade+1 AS idadeDaquiUmAno FROM pessoa ORDER BY nome
  18. 18. SELECT – Clausula ORDER BY A ordenação é baseada no valor do código ASCII de cada carácter. Assim, os dígitos aparecem antes dos caracteres alfabéticos e as maiúsculas antes das minúsculas. A ordenação pode ser realizada através da cláusula ORDER BY no comando SELECT. Esta cláusula, se existir, aparece sempre posicionada no final do comando SELECT.
  19. 19. Order By SELECT campo1, campo2,…, campon FROM tabela1, …, tabela n [WHERE condição] [GROUP BY …] [HAVING …] ORDER BY campo1[ASC|DESC], campo2[ASC|DESC],… Onde campo representa o nome do campo, uma expressão ou a posição da coluna do SELECT. ASC indica que a ordenação é Ascendente e DESC indica que a ordenação é Descendente.
  20. 20. Ordenar uma coluna A ordenação por coluna faz-se especificando, na cláusula ORDER BY, qual a coluna pela qual se pretende ordenar. Problema: Seleccionar todas as pessoas, ordenando o resultado pela idade. SELECT * FROM pessoa ORDER BY idade
  21. 21. Ordenar Varias colunas Para se ordenar o resultado de um SELECT por mais do que uma coluna, basta indicar, na cláusula ORDER BY, o conjunto das colunas pela ordem em que se pretende ordenar. Caso se indique que se pretende ordenar o resultado de um SELECT por mais do que uma coluna a ordenação é feita pela primeira coluna, e entre valores iguais é ordenada pela segunda coluna, ...

×