PROYECTO BASES DE DATOS OSCAR JOYA
OBJETIVO DEL PROYECTO
En este blog se presentará todo lo realizado para trabajar con una base de datos e integrarla en MySQL para realizar consultas que permitirían extraer información de la misma.
ESQUEMA O MODELO ENTIDAD RELACIÓN
Con apoyo de la herramienta LucidChart se creó el modelo entidad relación para tener una guía al momento de crear la base.
La base de datos en cuestión representa la información de los equipos y de los futbolistas que los conforman, ya que la base antes de un proceso de limpieza y normalización contiene los siguientes datos:
- Nombre del futbolista
- Nacionalidad del futbolista
- Año de nacimiento del futbolista
- Sueldo del futbolista
- Equipo al que pertenece el futbolista
- Datos del equipo al que pertenece el futbolista (Año de creación, Nombre del equipo, etc...)
- Patrocinio del equipo al que pertenece el futbolista y el tiempo del contrato del patrocinio
- Selección a la que pertenece el futbolista (Ya que pudo haber sido nacionalizado)
- Mundiales que ganó la selección a la que pertenece el futbolista.
CREACIÓN DE LA BASE DE DATOS
La base de datos fue creada con asistencia de inteligencia artificial, se puede ver a continuación cómo está distribuida previo a la normalización:
Primera Forma Normal (1FN) :
Se separaron las columnas de los datos que se repetían de las que no, resultando 2 tablas, una con los patrocinios, su identificador y el tiempo del contrato del patrocinio, que se conecta con la otra tabla que contiene el resto de la información. Además, la IA generativa cometió un error en el DNI, ya que debe ser un identificador único para cada jugador, sin embargo repitió la mayoría de los datos, esto cobra sentido ya que esta información es sensible y no se encuentra en ningún lado. Para solucionar este error se generó un nuevo código identificador para cada jugador y adoptó el nombre de "DNI_FUTBOLISTA", a continuación las 2 tablas:
- TABLA 1
- TABLA 2:
Segunda Forma Normal (2FN) :
Para este proceso se separaron las columnas que dependían de una parte de la llave primaria, generando 3 Tablas diferentes; La Tabla 3 (TABLA PATROCINIOS), TABLA FUTBOLISTAS y TABLA GENERAL como se puede observar a continuación:
- TABLA FUTBOLISTAS:
- TABLA GENERAL:
Las tablas resultantes se muestran a continuación:
- TABLA FUTBOLISTAS
- TABLA GENERAL:
CONSULTAS EN MySQL
Después de ingresar los datos, crear y llenar tablas normalizadas en MySQL WorkBench el diagrama entidad relación generado por el programa fue el siguiente:
A continuación se harán algunas consultas desde la base de datos creada previamente con base en preguntas orientadoras; se mostrará primero el resultado de la consulta y luego el código que la genera, por motivos de espacio en algunas respuestas no se mostrarán todas las filas resultantes sino únicamente las primeras:
1. ¿Qué futbolistas ganan más de 2 millones de dólares mensuales?
El código que lo genera es el siguiente:
2. ¿Cuál es el sueldo promedio de los futbolistas por equipo?
El código que lo genera es el siguiente:
3. ¿Qué futbolistas tienen un sueldo superior al promedio de su liga?
El código que lo genera es el siguiente:
El código que lo genera es el siguiente:
5.3 ¿Cuál es el top 5 de patrocinadores y a cuántos equipos de primera división tiene cada patrocinador?
El código que lo genera es el siguiente:
Comentarios
Publicar un comentario