Bases de dados: SQL (continuação)Carlos SantosLabMM 4 - NTC - DeCA - UAAula 08, 12-03-2013
Modelo lógico vs modelo físicoO modelo lógico representa todas as lógicas inerentes ao problema:tabelas, campos, chaves pr...
SQL | Operadores e algumas funçõessímbolo           descrição                           exemplo                    observa...
SQL | Operadores LógicosAND, OR e NOT  • Estes operadores têm uma prioridade inferior relativamente aos    apresentados no...
SQL: SELECT DISTINCT … FROMSELECT oficinasql.viaturas.MarcaFROM oficinasql.viaturas;SELECT DISTINCT oficinasql.viaturas.Marca...
SQL: SELECT … FROM ... WHERE • SELECT oficinasql.viaturas.Marca, oficinasql.viaturas.Modelo   FROM oficinasql.viaturas   WHER...
SQL: SELECT … FROM ... WHERE • SELECT oficinasql.viaturas.Marca, oficinasql.viaturas.Modelo   FROM oficinasql.viaturas   WHER...
SQL: exemplos • SELECT oficinasql.viaturas.Marca, oficinasql.viaturas.Modelo   FROM oficinasql.viaturas   WHERE oficinasql.via...
SQL: exemplos • SELECT oficinasql.viaturas.Marca   FROM oficinasql.viaturas   WHERE NOT oficinasql.viaturas.Marca IN ("Subaru...
SQL: Funções pré-definidasFunções pré-definidas que trabalham sobre grupos de dados  • AVG – valor médio  • MIN– valor mínim...
SQL: Funções pré-definidas • SELECT MAX(oficinasql.viaturas.Preco)   FROM oficinasql.viaturas; • SELECT COUNT(oficinasql.viatu...
SQL: AS • SELECT COUNT(oficinasql.viaturas.Modelo) AS TotalViaturas   FROM oficinasql.viaturas;                             ...
SQL: Funções pré-definidas • SELECT oficinasql.viaturas.Marca, COUNT(oficinasql.viaturas.Modelo)   FROM oficinasql.viaturas   ...
SQL INSERTINSERT INTO oficinasql.clientes VALUES (NULL, Joaquim Soares,981234567, ‘Rua Estreita);  • Desta forma inserem-se...
SQL INSERTINSERT INTO oficinasql.clientes (Nome,Idade) VALUES (SerafimSaudade, 24);  • Podem inserir-se valores apenas em al...
SQL UPDATEUPDATE oficinasql.clientesSET oficinasql.clientes.Nome = "Serafim Saudoso",oficinasql.clientes.Idade = 65WHERE oficin...
Upcoming SlideShare
Loading in...5
×

LabMM4 (T08 - 12/13) - SQL continuação

454

Published on

Published in: Education
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
454
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
63
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

LabMM4 (T08 - 12/13) - SQL continuação

  1. 1. Bases de dados: SQL (continuação)Carlos SantosLabMM 4 - NTC - DeCA - UAAula 08, 12-03-2013
  2. 2. Modelo lógico vs modelo físicoO modelo lógico representa todas as lógicas inerentes ao problema:tabelas, campos, chaves primárias e as suas relações. Deve incluir: • entidades e respetivos atributos • chaves primárias • propriedades de relações • relações e seus tiposO modelo físico é uma versão mais completa do modelo lógico, sendoadicionada a informação necessária para que esse modelo possa serimplementado num SGBDR. Deve incluir: • chaves estrangeiras • tabelas de relação • identificação do tipo de dados e suas características especiais (UN,NN,...)
  3. 3. SQL | Operadores e algumas funçõessímbolo descrição exemplo observações= Igual EmployeeNo = 2> Maior EmployeeNo > 2< Menor EmployeeNo < 2<> Diferente EmployeeNo <> 2>= Maior ou igual EmployeeNo >= 2<= Menor ou igual EmployeeNo <= 2IN Igual a um valor dentro de uma EmployeeNo IN (2,3,4) colecção de valoresLIKE Similar LastName LIKE ‘Nunes’BETWEEN ... AND Dentro de um conjunto de valores, EmployeeNo BETWEEN 2 AND Equivalente a: incluindo os limites 4 EmployeeNo IN (2,3,4)IS NULL DateEmployed IS NULLIS NOT NULL DateEmployed IS NOT NULLNOW() Devolve a DATA e HORA do servidor
  4. 4. SQL | Operadores LógicosAND, OR e NOT • Estes operadores têm uma prioridade inferior relativamente aos apresentados no slide anterior • As prioridades podem ser alteradas através da utilização de ( ) símbolo descrição exemplo observações AND As duas expressões SalesNo > 3 AND Customer O AND tem maior prioridade do que têm que ter o valor < “Smith” o OR verdadeiro para o resultado final ser verdadeiro OR Se qualquer uma das SalesNo > 3 OR Customer < expressões tiver o “Smith” valor verdadeiro, o resultado final é verdadeiro NOT Inverte o resultado SalesNo NOT IN (2; 3; 4) booleano
  5. 5. SQL: SELECT DISTINCT … FROMSELECT oficinasql.viaturas.MarcaFROM oficinasql.viaturas;SELECT DISTINCT oficinasql.viaturas.MarcaFROM oficinasql.viaturas;
  6. 6. SQL: SELECT … FROM ... WHERE • SELECT oficinasql.viaturas.Marca, oficinasql.viaturas.Modelo FROM oficinasql.viaturas WHERE oficinasql.viaturas.Marca < Fiat OR oficinasql.viaturas.Marca > Smart; • SELECT oficinasql.viaturas.Marca, oficinasql.viaturas.Modelo FROM oficinasql.viaturas WHERE ((oficinasql.viaturas.Marca < Fiat) OR (oficinasql.viaturas.Marca > Smart)) AND oficinasql.viaturas.Modelo LIKE ‘C%’;
  7. 7. SQL: SELECT … FROM ... WHERE • SELECT oficinasql.viaturas.Marca, oficinasql.viaturas.Modelo FROM oficinasql.viaturas WHERE oficinasql.viaturas.Marca IN (Citroen, Smart); • SELECT oficinasql.viaturas.Marca, oficinasql.viaturas.Modelo FROM oficinasql.viaturas WHERE oficinasql.viaturas.Marca BETWEEN "Ferrari" AND "Renault" ORDER BY oficinasql.viaturas.Marca;
  8. 8. SQL: exemplos • SELECT oficinasql.viaturas.Marca, oficinasql.viaturas.Modelo FROM oficinasql.viaturas WHERE oficinasql.viaturas.DataVenda IS NULL; • SELECT oficinasql.viaturas.Marca, oficinasql.viaturas.Modelo FROM oficinasql.viaturas WHERE oficinasql.viaturas.DataVenda IS NOT NULL;
  9. 9. SQL: exemplos • SELECT oficinasql.viaturas.Marca FROM oficinasql.viaturas WHERE NOT oficinasql.viaturas.Marca IN ("Subaru", "Ferrari", "Renault");
  10. 10. SQL: Funções pré-definidasFunções pré-definidas que trabalham sobre grupos de dados • AVG – valor médio • MIN– valor mínimo • MAX – valor máximo • COUNT – número de elementos • SUM – soma
  11. 11. SQL: Funções pré-definidas • SELECT MAX(oficinasql.viaturas.Preco) FROM oficinasql.viaturas; • SELECT COUNT(oficinasql.viaturas.Modelo) FROM oficinasql.viaturas;
  12. 12. SQL: AS • SELECT COUNT(oficinasql.viaturas.Modelo) AS TotalViaturas FROM oficinasql.viaturas; TotalViaturas • SELECT COUNT(oficinasql.viaturas.Modelo) FROM oficinasql.viaturas AS tViat ... a partir daqui podemos utilizar “tViat” sempre que for necessário referir a tabela “oficinasql.viaturas”;
  13. 13. SQL: Funções pré-definidas • SELECT oficinasql.viaturas.Marca, COUNT(oficinasql.viaturas.Modelo) FROM oficinasql.viaturas GROUP BY oficinasql.viaturas.Marca;
  14. 14. SQL INSERTINSERT INTO oficinasql.clientes VALUES (NULL, Joaquim Soares,981234567, ‘Rua Estreita); • Desta forma inserem-se valores em todos os campos da tabela pela ordem como estão declaradas as colunas • Utiliza-se o NULL em campos com AI (por exemplo, no caso da PK) ou onde não se queira inserir informação
  15. 15. SQL INSERTINSERT INTO oficinasql.clientes (Nome,Idade) VALUES (SerafimSaudade, 24); • Podem inserir-se valores apenas em alguns campos • Campos com AI serão actualizados automaticamente
  16. 16. SQL UPDATEUPDATE oficinasql.clientesSET oficinasql.clientes.Nome = "Serafim Saudoso",oficinasql.clientes.Idade = 65WHERE oficinasql.clientes.idClientes = 12;
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×