Está en la página 1de 8

Trabajo de Normalización

Presentado por:
Pedro Fernando Marquez Diaz

Profesor:
Jorge Ospina Beltrán

Corporación Unificación Nacional (CUN)

Gestión de Bases Datos

Bogotá

2020
Cláusula Group by

La cláusula GROUP BY es un comando SQL que se usa para agrupar filas que tienen
los mismos valores.

La cláusula GROUP BY se utiliza en la instrucción SELECT. Opcionalmente se usa


junto con funciones agregadas para producir informes resumidos de la base de datos.

Eso es lo que hace, resumiendo los datos de la base de datos.

Las consultas que contienen la cláusula GROUP BY se denominan consultas


agrupadas y solo devuelven una sola fila para cada elemento agrupado.

GROUP BY Sintaxis

Ahora que sabemos cuál es la cláusula GROUP By, veamos la sintaxis para un grupo
básico por consulta.

Sentencias SELECT ... GROUP BY column_name1 [, column_name2, ...] [HAVING


condition];

HAVING cláusula MySQL

Having se usa en la SELECT instrucción para especificar condiciones de filtro para un


grupo de filas o agregados.

La cláusula having se usa a menudo con la GROUP BY cláusula para filtrar grupos
según una condición específica. Si GROUP BY se omite la cláusula HAVING, la
cláusula se comporta como la WHERE cláusula.

A continuación, se ilustra la sintaxis de la HAVING cláusula:

SELECT

select_list
FROM

table_name

WHERE

search_condition

GROUP BY

group_by_expression

HAVING

group_condition;

En esta sintaxis, especifica una condición en la cláusula HAVING. Si una fila, que es
generada por el grupo por cláusula, hace que la group_condition evaluación sea
verdadera, la consulta la incluirá en el conjunto de resultados.

Observe que la cláusula HAVING aplica una condición de filtro a cada grupo de filas,
mientras que la cláusula WHERE aplica la condición de filtro a cada fila individual.

MySQL evalúa la cláusula HAVING después de los FROM, WHERE, SELECT y


GROUP BY cláusulas y antes ORDER BY, y cláusulas LIMIT.

FORMA NORMAL

las formas normales (NF) proporcionan los criterios para determinar el grado de
vulnerabilidad de una tabla a inconsistencias y anomalías lógicas. Cuanto más alta sea
la forma normal aplicable a una tabla, menos vulnerable será a inconsistencias y
anomalías. Cada tabla tiene una "forma normal más alta" (HNF): por definición, una
tabla siempre satisface los requisitos de su HNF y de todas las formas normales más
bajas que su HNF; también por definición, una tabla no puede satisfacer los requisitos
de ninguna forma normal más arriba que su HNF.

Las formas normales son aplicables a tablas individuales; decir que una base de datos
entera está en la forma normal n es decir que todas sus tablas están en la forma
normal n.
Los recién llegados al diseño de bases de datos a veces suponen que la normalización
procede de una manera iterativa, es decir un diseño 1NF primero se normaliza a 2NF,
entonces a 3NF, etcétera. Ésta no es una descripción exacta de cómo la normalización
trabaja típicamente. Una tabla sensiblemente diseñada es probable que esté en 3NF en
la primera tentativa; además, si está en 3NF, también es extremadamente probable que
tenga una forma HNF de 5NF. Conseguir formas normales "más altas" (sobre 3NF)
usualmente no requiere un gasto adicional de esfuerzo por parte del diseñador, porque
las tablas 3NF usualmente no necesitan ninguna modificación para satisfacer los
requisitos de estas formas normales más altas.

Edgar F. Codd originalmente definió las tres primeras formas normales (1NF, 2NF, y
3NF). Estas formas normales se han resumido como requiriendo que todos los
atributos no-clave sean dependientes en "la clave, la clave completa, y nada excepto la
clave". Las cuarta y quinta formas normales (4NF y 5NF) se ocupan específicamente
de la representación de las relaciones muchos a muchos y uno muchos entre los
atributos. La sexta forma normal (6NF), en pocas palabras, se basa en el principio de
que, si se tiene más de dos claves candidatas en una tabla, se tendrán que crear otras
tablas con estas.

Por ejemplo, si tenemos "ítem" con un id código de producto y con los atributos
descripción y precio que son claves candidatas se tendría que crear otras tablas
separando la tabla ítem: ItemDesc {código_producto*, Descripción} ItemPrecio
{código_producto*, Precio}.

La sexta forma normal no es muy utilizada porque genera más tablas cuando tenemos
pequeñas bases de datos.
Primera forma normal (1FN)

La primera forma normal (1FN o forma mínima) es forma normal usada en


normalización de bases de datos. Una tabla de base de datos relacional que se adhiere
a la 1FN es una que satisface cierto conjunto mínimo de criterios. Estos criterios se
refieren básicamente a asegurarse que la tabla es una representación fiel de una
relación y está libre de "grupos repetitivos".

Una relación R (A1....AN) está en 1FN, Sí y solo sí todo atributo A1 es simple y mono
valuado. Para saber si está en 2FN tenemos que ver tu dependencia funcional.

Atributo primo: sea R (A1…AN) y Dependencia Funcional (F, R), sea (A) un atributo
(A1....AN) diremos que (A) es primo. Si existe una clave candidata (K) de (R) según (F)
tal que (A) pertenece (K).

Dependencia funcional total: no puede quitar ningún atributo.

Las tablas 1FN como representaciones de relaciones Según la definición de Date de la


1FN, una tabla está en 1FN si y solo si es "isomorfa a alguna relación", lo que significa,
específicamente, que satisface las siguientes cinco condiciones:

1. No hay orden de arriba-a-abajo en las filas.


2. No hay orden de izquierda-a-derecha en las columnas.
3. No hay filas duplicadas.
4. Cada intersección de fila-y-columna contiene exactamente un valor del dominio
aplicable (y nada más).
5. Todas las columnas son regulares [es decir, las filas no tienen componentes
como IDs de fila, IDs de objeto, o timestamps ocultos].

La violación de cualesquiera de estas condiciones significaría que la tabla no es


estrictamente relacional, y por lo tanto no está en 1FN.

Segunda forma normal (2FN)


La segunda forma normal es una forma normal usada en normalización de bases de
datos. La 2NF fue definida originalmente por E.F. Codd en 1971. Una tabla que está en
la primera forma normal debe satisfacer criterios adicionales para calificar para la
segunda forma normal.

Una relación con un conjunto de dependencia funcional (F, R). esta en 2FN si y solo si
para todo atributo (A) y clave (K), tal es que (A) es un atributo de la relación y (A) no es
primo y (k) es una clave de la relación según (F), se cumple que es una dependencia
funcional total (K) y implica (A).

Tercera forma normal (3FN)

Sea una relación (A1....An) con sus diferencias funcionales (F,R) diremos que (R) está
en 3FN según (F). Esta 3FN (R, F).

si y solo si, para todo (F), tal que (F) es una dependencia funcional, (f) pertenece a (F).

se cumple que super clave el antecedente de (F) o para todo (A) que pertenece al
consecuente de (F).

(A) es un atributo primo.

La tercera forma normal es una forma normal usada en la normalización de bases de


datos. La 3NF fue definida originalmente por E.F. Codd en 1971. Un atributo no-
primario es un atributo que no pertenece a ninguna clave candidata. [ CITATION Ter20 \l
2058 ]

Forma normal de Boyce-Codd (FNBC)

Sea una relación (A1….AN) con sus diferencias funcionales (F, R) diremos que (R) esta
en BCNF(R,F).

Si y solo si el antecedente de (F) para toda la dependencia funcional es super clave.

La Forma Normal de Boyce-Codd es una forma normal utilizada en la normalización de


bases de datos. Es una versión ligeramente más fuerte de la Tercera forma normal. La
forma normal de Boyce-Codd requiere que no existan dependencias funcionales no
triviales de los atributos que no sean un conjunto de la clave candidata. En una tabla en
3FN, todos los atributos dependen de una clave, de la clave completa y de ninguna otra
cosa excepto de la clave.[ CITATION For20 \l 2058 ].

Cuarta forma normal (4FN)

La cuarta forma normal es una forma normal usada en la normalización de bases de


datos. La 4FN se asegura de que las dependencias multivaluadas independientes
estén correctas y eficientemente representadas en un diseño de base de datos. La 4FN
es el siguiente nivel de normalización después de la forma normal de Boyce-Codd.

Una tabla está en 4FN si y solo si está en Tercera forma normal o en FNBC
(Cualquiera de ambas) y no posee dependencias multivaluadas no triviales. La
definición de la 4FN confía en la noción de una dependencia multivaluada. Una tabla
con una dependencia multivaluada es una donde la existencia de dos o más relaciones
independientes muchos a muchos causa redundancia; y es esta redundancia la que es
suprimida por la cuarta forma normal.[ CITATION Cua20 \l 2058 ]

Quinta forma normal (5FN)

La quinta forma normal, también conocida como forma normal de proyección-unión, es


un nivel de normalización de bases de datos diseñado para reducir redundancia en las
bases de datos relacionales que guardan hechos multi-valores aislando
semánticamente relaciones múltiples relacionadas. Una tabla se dice que está en 5NF
si y sólo si está en 4NF y cada dependencia de unión en ella es implicada por las
claves candidatas.[ CITATION Qui20 \l 2058 ]
Referencias

 Cuarta forma normal. (s.f.). Recuperado el 13 de 4 de 2020, de Wikipedia, la


enciclopedia libre: http://es.wikipedia.org/wiki/Cuarta_forma_normal
 Forma normal de Boyce-Codd. (s.f.). Recuperado el 13 de 4 de 2020, de
Wikipedia, la enciclopedia libre:
http://es.wikipedia.org/wiki/Forma_normal_de_Boyce-Codd
 Guru99. (2020). Obtenido de Guru99: https://guru99.es/group-by/
 MySQLTutorial. (2020). Obtenido de MySQLTutorial:
https://www.mysqltutorial.org/mysql-having.aspx
 Primera forma normal. (s.f.). Recuperado el 13 de 4 de 2020, de Wikipedia, la
enciclopedia libre: http://es.wikipedia.org/wiki/Primera_forma_normal
 Quinta forma normal. (s.f.). Recuperado el 13 de 4 de 2020, de Wikipedia, la
enciclopedia libre: http://es.wikipedia.org/wiki/Quinta_forma_normal
 Segunda forma normal. (s.f.). Recuperado el 13 de 4 de 2020, de Wikipedia, la
enciclopedia libre: http://es.wikipedia.org/wiki/Segunda_forma_normal
 Tercera forma normal. (s.f.). Recuperado el 13 de 4 de 2020, de Wikipedia, la
enciclopedia libre: http://es.wikipedia.org/wiki/Tercera_forma_normal

 Clase 17: Normalización: Formas normales: https://www.youtube.com/watch?


v=8IhO9fhICL4

También podría gustarte