Fundamentos de SQL - Parte 5 de 8

1.768 visualizações

Publicada em

Nessa parte do curso veremos normalização de tabelas.

Publicada em: Educação, Tecnologia
0 comentários
3 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

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

Nenhuma nota no slide

Fundamentos de SQL - Parte 5 de 8

  1. 1. Fundamentos de SQL Microsoft SQL Server 2005 Emiliano Eloi<emilianoeloi@gmail.com>
  2. 2. Objetivos <ul><li>Compreender DDL, DML e SELECT </li></ul><ul><li>Entender um DER(Diagrama de Entidade-Relacionamento) </li></ul><ul><li>Pensar em SQL. </li></ul>
  3. 3. Para hoje <ul><li>Na aula passada: DDL. </li></ul><ul><li>Na aula de hoje: Tabela Temporária, Normalização de base de dados </li></ul><ul><li>Também veremos os comando UNION, DISTINCT </li></ul>
  4. 4. Lista de Verificação <ul><li>Micro computado ligado. </li></ul><ul><li>Teclado e mouse. </li></ul><ul><li>Autenticação no Windows. </li></ul><ul><li>Internet Explorer funcionando. </li></ul><ul><li>Microsoft SQL Server Management Studio. </li></ul>
  5. 5. Normalização Normalização é um conjunto de regras(formas normais) que expressam critérios práticos de simplificação de tabelas. Tem a utilidade de analisar tabelas e organizá-las de modo que as suas estrutura seja simples, relacional e estável.
  6. 6. Primeira forma normal – 1FN Enunciado Uma tabelas está na primeira forma normal se nenhum dos seus atributos tem domínio multivalorado. Objetivo Evitar que se tenha de reservar espaços para armazenar dados multivalorados, sendo que o espaço pode ser desperdiçado em um registro e ser insuficiente em outro. Utilização Projetam-se os atributos com domínio multivalorado para fora da tabela, levando um atributo (geralmente a chave da tabela original) como elo para refazer a ligação e recuperar o conteúdo da tabela original
  7. 7. Segunda forma normal – 2FN Enunciado Uma tabela esta na 2FN quando está na 1FN e seus atributos dependem funcionalmente da totalidade da chave ou do atributo determinante. A 2FN aplica-se a tabelas onde a chave (atributo determinante) é composta por mais de um atributo. Objetivo Evitar que se mantenha informações sobre um conjunto que tenha intersecção com o conjunto representado na tabela, mas possui existência independente. Além da maior ocupação de espaço, a redundância aumenta a possibilidade de inconsistência. Utilização Projeta-se os atributos que dependem funcionalmente da parte de chave para fora da tabela, levanto parte da chave que os determina como elo para refazer a ligação e recuperar o conteúdo da tabela original
  8. 8. Terceira forma normal – 3FN Enunciado Uma tabela esta na 3FN quando está na 2FN e não há dependência funcional transitiva entre seus atributos. Dependência funcional transitiva é a situação em que um atributo depende de outro e sete segundo dependente de um terceiro Objetivo Separar subconjuntos insertos em um superconjunto e evitar redundância nas informações. Além de repetições dos dados, a possibilidade de deterioração da qualidade das informações aumenta muito. Utilização Projetam-se os atributos que dependem transitivamente da chave para fora da tabela, levando o seu determinante direto como elo para refazer a ligação e recuperar o conteúdo da tabela original
  9. 9. Quarta e quinta formas normais – 4FN/5FN A aplicação das regras de normalização pressupõe, inicialmente, uma situação dita não normalizada (ÑN), ou seja, um conjunto de dados estruturados (tabelas aninhadas) que representam um documento, relatório etc. A partir daí, aplicam-se, nessa ordem, as formas normais apresentadas( são cinco formas normais, porém, na prática, considera-se normalizada uma tabela que atenda às três primeiras formas normais.
  10. 10. Distinct <ul><li>Em uma tabela, algumas das colunas podem conter valores duplicados. Este não é um problema, no entanto, às vezes você irá querer listar apenas os valores diferentes (distintos) em uma tabela. A palavra chave DISTINCT pode ser usada para retornar apenas valores distintos (diferentes). </li></ul>
  11. 11. Distinct - Usando SELECT DISTINCT DT_DATA_ADMISSAO FROM TBL_ATENDENTES
  12. 12. Agregação <ul><li>O SQL possibilita reunir registros em grupos e de resumir estes grupos em várias maneiras, retornando em ultima analise, apenas registros por grupo. Você faz isso utilizando as cláusulas GROUP BY e HAVING , com várias funções de agregação. </li></ul>
  13. 13. Função de agragação - COUNT Conta o número de valores não nmulos em um grupo de valores SELECT ID_ATENDENTE , COUNT ( ID_ATENDENTE ) [QTDE_ATENDIMENTOS] FROM TBL_ATENDIMENTOS GROUP BY ID_ATENDENTE
  14. 14. Função de agragação - MAX Retorna o maior valor de um grupo. SELECT ID_ATENDENTE , MAX ( DT_DATA_ATENDIMENTO ) [DT_DATA_ATENDIMENTO] FROM TBL_ATENDIMENTOS GROUP BY ID_ATENDENTE
  15. 15. Função de agragação - MIN Retorna o maior valor de um grupo. SELECT ID_ATENDENTE , MIN ( DT_DATA_ATENDIMENTO ) [DT_DATA_ATENDIMENTO] FROM TBL_ATENDIMENTOS GROUP BY ID_ATENDENTE
  16. 16. Função de agragação - SUM Retorna a soma de uma coluna de um agrupamento. SELECT ID_ACAO , SUM ( NR_QUANTIDADE_ACAO ) [SOMA_ACOES] FROM TBL_COMPRAS_ACOES GROUP BY ID_ACAO
  17. 17. União <ul><li>Combina o resultado de duas ou mais consultas dentro de uma única tabela de resultados. É importante que as consultas envolvidas o mesmo número de colunas e que as colunas tenham o mesmo tipo. </li></ul>
  18. 18. União - Usando SELECT PARTIDO_GOVERNADOR [PARTIDO] FROM TBL_GOVERNO UNION SELECT PARTIDO_VICE_GOVERNADOR [PARTIDO] FROM TBL_GOVERNO

×