O documento discute os conceitos de normalização de banco de dados, incluindo as primeiras, segunda e terceira formas normais. Também explica os comandos SQL DISTINCT, agregação com GROUP BY e HAVING e a união de consultas com UNION.
Bingo da potenciação e radiciação de números inteiros
Fundamentos de SQL - Parte 5 de 8
1. Fundamentos de SQL Microsoft SQL Server 2005 Emiliano Eloi<emilianoeloi@gmail.com>
2.
3.
4.
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. 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. 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. 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. 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.
11. Distinct - Usando SELECT DISTINCT DT_DATA_ADMISSAO FROM TBL_ATENDENTES
12.
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. 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. 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. 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.
18. União - Usando SELECT PARTIDO_GOVERNADOR [PARTIDO] FROM TBL_GOVERNO UNION SELECT PARTIDO_VICE_GOVERNADOR [PARTIDO] FROM TBL_GOVERNO