Banco de Dados II - Unimep/Pronatec - Aula 6

208 visualizações

Publicada em

Sexta aula de Banco de Dados II realizada para o terceiro semestre do Curso de Técnico em Informática para Internet (Pronatec/UNIMEP)

Publicada em: Software
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
208
No SlideShare
0
A partir de incorporações
0
Número de incorporações
4
Ações
Compartilhamentos
0
Downloads
7
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide

Banco de Dados II - Unimep/Pronatec - Aula 6

  1. 1. Unimep/Pronatec 3° Semestre AULA 6 - Prof. André Bertoletti - apbertolet@unimep.br Banco de Dados II
  2. 2. Agenda de hoje  Nosso repositório de scripts  Recordando nosso contexto e últimos comandos  Comandos de distinção e agrupamento  Exercícios de fixação
  3. 3. Scripts completos utilizados nesta aula disponíveis no repositório abaixo: https://github.com/apbertoletti/Pronatec-BD2
  4. 4. Recordando nosso contexto
  5. 5. Recordando a necessidade Uma loja de materiais esportivos (roupas, tênis, equipamentos, etc) precisa manter um banco de dados dos seus clientes, produtos e vendas realizadas. Além da necessidade de se manter seus cadastros de forma organizada, pretende-se também levantar algumas estatísticas básicas do perfil de seus clientes, produtos e também das vendas por período.
  6. 6. Etapas para a definição do modelo de dados 1) Definição do modelo conceitual  Detalhes mais abstratos 2) Definição do modelo lógico  Normalização (evitar anomalia de dados entre as entidades)  Relacionamentos (definir PKs, FKs, etc)  Cardinalidade (1..N, 1..1, N..N, etc) 3) Definição do modelo físico  Scripts para gerar os objetos de BD
  7. 7. 1) Definição do modelo conceitual  Cadastro de Clientes  Nome  Data de nascimento  Sexo  CPF  Email  Cadastro de Produtos  Valor  Categoria  Mais vendidos  Vendas realizadas  Data/hora  Loja que vendeu (filial)
  8. 8. 2) Definição do modelo lógico
  9. 9. 3) Definição do modelo físico
  10. 10. Recordar é viver!
  11. 11. INSERT: inserção de registros Sintaxe: INSERT INTO <nome da tabela> [<lista de colunas>] VALUES (<lista de valores>)
  12. 12. INSERT: exemplos
  13. 13. SELECT: seleção de registros Sintaxe: SELECT <lista de colunas> FROM <nome da tabela> [WHERE <condição de filtro>]
  14. 14. SELECT: exemplos
  15. 15. UPDATE: alteração de registros Sintaxe: UPDATE <nome da tabela> SET <nome da coluna> = <novo conteúdo> [WHERE <condição de filtro>]
  16. 16. UPDATE: exemplos
  17. 17. DELETE: deleção de registros Sintaxe: DELETE FROM <nome da tabela> [WHERE <condição de filtro>]
  18. 18. DELETE: exemplos
  19. 19. LIKE: filtro aproximado Sintaxe com conteúdo no fim: (...) WHERE <Coluna> LIKE ‘%conteúdo’ Sintaxe com conteúdo no início: (...) WHERE <Coluna> LIKE ‘conteúdo%’ Sintaxe com conteúdo no inicio, meio ou fim: (...) WHERE <Coluna> LIKE ‘%conteúdo%’
  20. 20. LIKE: exemplos
  21. 21. BETWEEN: filtro de intervalos Sintaxe: (...) WHERE <Coluna> BETWEEN <valor1> AND <valor2>
  22. 22. BETWEEN: exemplos
  23. 23. TOP: limitando a quantidade de registros Sintaxe: SELECT TOP <N> <Lista de colunas> FROM <Tabela> [WHERE <condição de filtro>]
  24. 24. TOP: exemplos
  25. 25. COUNT: contando a quantidade de registros Sintaxe: SELECT COUNT(*) FROM <Tabela> [WHERE <condição de filtro>]
  26. 26. COUNT: exemplos
  27. 27. SUM: somando um determinado campo Sintaxe: SELECT SUM(<nomeDoCampo>) FROM <Tabela> WHERE <condição de filtro>
  28. 28. SUM: exemplos
  29. 29. AVG: tirando a média um determinado campo Sintaxe: SELECT AVG(<nomeDoCampo>) FROM <Tabela> [WHERE <condição de filtro>]
  30. 30. AVG: exemplos
  31. 31. DISTINCT: não levar em consideração os registros duplicados Sintaxe: SELECT DISTINCT <Lista de colunas> FROM <Tabela> [WHERE <condição de filtro>]
  32. 32. DISTINCT: exemplos
  33. 33. GROUP BY: agrupando dados por valore iguais Sintaxe: SELECT <Lista de colunas agrupadas>, [<Funções de agregação de dados>] FROM <Tabela> [WHERE <condição de filtro>] GROUP BY <Lista de colunas agrupadas>
  34. 34. GROUP BY: exemplos Sintaxe: SELECT <Lista de colunas agrupadas>, [<Funções de agregação de dados>] FROM <Tabela> [WHERE <condição de filtro>] GROUP BY <Lista de colunas agrupadas>
  35. 35. Principal diferença entre DISTINCT e o GROUP BY  A diferença entre os algoritmos é que o GROUP BY permite funções de agregação como um passo adicional enquanto que o DISTINCT não permite.  DISTINCT: mais rápido, menos recursos  GROUP BY: menos rápido, mais recursos
  36. 36. Vamos treinar um pouco?!
  37. 37. Lição pra casa (valendo solzinho)  Pensar num contexto qualquer e criar os modelos conceituais, lógicos e físicos deste banco de dados  Inserir diversos registros de exemplo em suas tabelas (comando INSERT)  Criar ao menos 3 (três) exemplos de cada um dos comandos que já aprendemos:  SELECT, UPDATE, DELETE, LIKE, BETWEEN, TOP, COUNT, SUM, AVG, DISTINCT e GROUP BY  Prazo de entrega: 28/Set (próxima aula). Traga seus modelos e scripts para apresentar à todos.
  38. 38. Contextos escolhidos por cada aluno
  39. 39. Scripts completos utilizados nesta aula disponíveis na URL abaixo: https://github.com/apbertoletti/Pronatec-BD2
  40. 40. Por hoje é só... Bora estudar e praticar!

×