Este documento describe diferentes tipos de consultas SQL que involucran más de una tabla. Explica composiciones cruzadas (producto cartesiano), composiciones internas (intersección) y composiciones externas. Detalla cómo realizar este tipo de consultas utilizando la sintaxis SQL-1 y SQL-2, incluyendo JOINs internos, externos y cruces. El propósito es mostrar diferentes formas de unir tablas y recuperar información de múltiples tablas relacionadas.
Implementacion de bases de datos en mysqlPipe Muñoz
Este documento explica cómo implementar bases de datos en MySQL. MySQL es un sistema de gestión de bases de datos relacional que utiliza el lenguaje SQL. Para crear una base de datos, se usa el comando CREATE DATABASE. Luego, para crear tablas dentro de la base de datos, se usa el comando CREATE TABLE. Los datos se insertan en las tablas utilizando el comando INSERT. Las consultas a la base de datos se realizan con el comando SELECT.
Este documento proporciona una guía sobre consultas resumen en MySQL, incluyendo funciones de agregación como COUNT, MAX, MIN y SUM. Explica cómo agrupar filas con GROUP BY y aplicar filtros a los grupos con HAVING. También cubre errores comunes como el uso incorrecto de COUNT(*) y COUNT(columna), o aplicar funciones de agregación en la cláusula WHERE.
Creación de red inalámbrica con cisco packet tracerJenny Lophezz
El documento describe 9 pasos para crear una red inalámbrica con Cisco Packet Tracer, incluyendo colocar computadoras, un router principal y dispositivos inalámbricos para conectar 3 redes, configurar módulos en el router, conectar cables, asignar nombres a las redes, configurar IPs, y realizar cambios para habilitar la conexión inalámbrica.
El documento habla sobre el álgebra relacional, un método de manipulación de tablas y columnas que permite crear nuevas tablas a partir de las existentes. Explica los conceptos básicos como operadores, sentencias y estructuras del álgebra relacional para realizar consultas en bases de datos.
The document discusses different types of SQL joins, including inner joins, outer joins, equi joins, non-equi joins, natural joins, cross joins, left joins, right joins, full outer joins, and self joins. It provides the syntax and examples for each type of join. It also discusses joining tables through referential integrity, where a foreign key references a primary key in another table to link the tables together.
Este documento describe las funciones y componentes principales de un router de red. Un router conecta redes, entregando paquetes a través de diferentes redes de manera oportuna y proporcionando servicios como disponibilidad las 24 horas, priorización de tráfico en tiempo real, y protección contra ataques de red. Un router usa interfaces, CPU, memoria y el sistema operativo Cisco IOS para dirigir paquetes a través de redes locales y remotas.
Sql DML Lenguaje de manipulación de datos josecuartas
Este documento describe los principales comandos y cláusulas del lenguaje de manipulación de datos (DML) en SQL. Explica cómo se pueden insertar, actualizar y eliminar datos en una base de datos usando las instrucciones INSERT, UPDATE y DELETE. También describe cómo se pueden consultar y filtrar datos mediante las cláusulas SELECT, WHERE, ORDER BY y JOIN.
Este documento describe los conceptos básicos de la programación orientada a objetos como objetos, clases, herencia, envío de mensajes, análisis orientado a objetos y diseño orientado a objetos. También cubre los modelos de diseño, patrones de diseño y métodos como el de Booch, Rumbaugh y Jacobson. Finalmente, concluye que a pesar de las variantes entre metodologías, todas se basan en los mismos fundamentos de modelado de objetos.
Implementacion de bases de datos en mysqlPipe Muñoz
Este documento explica cómo implementar bases de datos en MySQL. MySQL es un sistema de gestión de bases de datos relacional que utiliza el lenguaje SQL. Para crear una base de datos, se usa el comando CREATE DATABASE. Luego, para crear tablas dentro de la base de datos, se usa el comando CREATE TABLE. Los datos se insertan en las tablas utilizando el comando INSERT. Las consultas a la base de datos se realizan con el comando SELECT.
Este documento proporciona una guía sobre consultas resumen en MySQL, incluyendo funciones de agregación como COUNT, MAX, MIN y SUM. Explica cómo agrupar filas con GROUP BY y aplicar filtros a los grupos con HAVING. También cubre errores comunes como el uso incorrecto de COUNT(*) y COUNT(columna), o aplicar funciones de agregación en la cláusula WHERE.
Creación de red inalámbrica con cisco packet tracerJenny Lophezz
El documento describe 9 pasos para crear una red inalámbrica con Cisco Packet Tracer, incluyendo colocar computadoras, un router principal y dispositivos inalámbricos para conectar 3 redes, configurar módulos en el router, conectar cables, asignar nombres a las redes, configurar IPs, y realizar cambios para habilitar la conexión inalámbrica.
El documento habla sobre el álgebra relacional, un método de manipulación de tablas y columnas que permite crear nuevas tablas a partir de las existentes. Explica los conceptos básicos como operadores, sentencias y estructuras del álgebra relacional para realizar consultas en bases de datos.
The document discusses different types of SQL joins, including inner joins, outer joins, equi joins, non-equi joins, natural joins, cross joins, left joins, right joins, full outer joins, and self joins. It provides the syntax and examples for each type of join. It also discusses joining tables through referential integrity, where a foreign key references a primary key in another table to link the tables together.
Este documento describe las funciones y componentes principales de un router de red. Un router conecta redes, entregando paquetes a través de diferentes redes de manera oportuna y proporcionando servicios como disponibilidad las 24 horas, priorización de tráfico en tiempo real, y protección contra ataques de red. Un router usa interfaces, CPU, memoria y el sistema operativo Cisco IOS para dirigir paquetes a través de redes locales y remotas.
Sql DML Lenguaje de manipulación de datos josecuartas
Este documento describe los principales comandos y cláusulas del lenguaje de manipulación de datos (DML) en SQL. Explica cómo se pueden insertar, actualizar y eliminar datos en una base de datos usando las instrucciones INSERT, UPDATE y DELETE. También describe cómo se pueden consultar y filtrar datos mediante las cláusulas SELECT, WHERE, ORDER BY y JOIN.
Este documento describe los conceptos básicos de la programación orientada a objetos como objetos, clases, herencia, envío de mensajes, análisis orientado a objetos y diseño orientado a objetos. También cubre los modelos de diseño, patrones de diseño y métodos como el de Booch, Rumbaugh y Jacobson. Finalmente, concluye que a pesar de las variantes entre metodologías, todas se basan en los mismos fundamentos de modelado de objetos.
This document provides an overview of ASP.NET Web API including:
- A model of REST maturity with 4 levels from plain XML to hypermedia controls.
- The purpose of Web APIs as RESTful HTTP services compared to SOAP.
- Mapping from WCF to the Web API model using controllers, actions, and routing instead of endpoints.
- Features like content negotiation, model binding, and dependency injection supported in the Web API stack.
Base de datos vs sistemas de ficheros exp.2 (1)Yudy Reyes
Una base de datos es un sistema que almacena datos de forma organizada para permitir un fácil acceso y uso de la información, mientras que un sistema de archivos almacena datos de forma menos estructurada en archivos dentro de carpetas en un disco duro. El documento describe brevemente la historia y evolución de las bases de datos desde la Antigüedad hasta la actualidad dominada por sistemas relacionales como Oracle y SQL.
El documento habla sobre los índices en bases de datos. Explica que los índices mejoran el rendimiento de las consultas al facilitar una respuesta rápida. Describe la estructura de los índices, los tipos de índices (agrupados y no agrupados), y cómo se usan los índices para localizar registros de manera eficiente. También cubre temas como la creación, administración y mantenimiento de índices.
Sql DDL Lenguaje de definición de datosjosecuartas
El documento describe el lenguaje de definición de datos (DDL) de SQL. El DDL permite crear y modificar objetos de base de datos como tablas, índices y vistas mediante sentencias como CREATE TABLE y CREATE INDEX. Explica cómo se usan estas sentencias para definir la estructura de las tablas incluyendo atributos, tipos de datos, restricciones y herencia. También cubre la creación de bases de datos y el uso de tablas temporales.
El documento explica la normalización de bases de datos. Resume que la normalización transforma datos complejos en estructuras más pequeñas, lo que reduce la repetición de datos y previene errores. Explica que existen diferentes niveles de normalización, incluyendo la primera, segunda y tercera formas normales. Además, provee un ejemplo de cómo normalizar una base de datos paso a paso hasta la tercera forma normal.
Joins in SQL are used to combine data from two or more tables based on common columns between them. There are several types of joins, including inner joins, outer joins, and cross joins. Inner joins return rows that match between tables, outer joins return all rows including non-matching rows, and cross joins return the cartesian product between tables.
The PPT would provide the Database Normalization is to restructure the logical data model of a database to:
Eliminate Redundancy
Organize Data Efficiently
Reduce the potential for Data Anomalies.
Database normalization is the process of refining the data in accordance with a series of normal forms. This is done to reduce data redundancy and improve data integrity. This process divides large tables into small tables and links them using relationships.
Here is the link of full article: https://www.support.dbagenesis.com/post/database-normalization
MySQL is a popular and freely available open-source relational database management system (RDBMS). It stores data in tables and relationships between data are also stored in tables. MySQL uses SQL and works on many operating systems. It has commands for data definition (CREATE, ALTER, DROP), data manipulation (SELECT, INSERT, UPDATE, DELETE), transaction control (COMMIT, ROLLBACK), and data access control (GRANT, REVOKE). Joins allow retrieving data from multiple tables by linking rows together. Common join types are inner joins, outer joins, and self joins.
Este documento proporciona instrucciones paso a paso para crear una base de datos MYSQL usando líneas de comando. Primero, abre una consola de comandos y navega a la carpeta de instalación de MYSQL Server. Luego, inicia sesión en MYSQL y verifica las bases de datos existentes. A continuación, crea una nueva base de datos llamada "Real_Madrid" y selecciónala. Finalmente, crea una tabla llamada "jugadores" dentro de la base de datos recién creada.
An introduction to database Normalization. An essential part of logical database design for relational databases. The presentation also has little coverage of related concepts like functional dependency, data anomalies, dependency preservation and lossless decomposition.
SQL es un lenguaje de consulta estructurado normalizado utilizado para consultar, modificar o eliminar datos en una base de datos. Contiene comandos, cláusulas, operadores y funciones como SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY, COUNT, SUM, MAX, MIN, AVG, AND, OR para realizar consultas. El documento explica los componentes básicos de SQL y proporciona ejemplos de su uso.
This document discusses SQL fundamentals including what is data, databases, database management systems, and relational databases. It defines key concepts like tables, rows, columns, and relationships. It describes different types of DBMS like hierarchical, network, relational, and object oriented. The document also covers SQL commands like SELECT, INSERT, UPDATE, DELETE, constraints, functions and more. It provides examples of SQL queries and functions.
Este minitutorial tiene como objetivo captar todos los conceptos dictados en cada sesión en el curso de Base de Datos Avanzado II, así como brindar apoyo a los alumnos de la carrera técnica de Computación e Informática, que por algún motivo no hayan asistido a clases.
UNIDAD 2. Creación de estructuras de datos
Logro de la Unidad de Aprendizaje
Al término de la unidad, el alumno diseña e implementa modelos de datos que incorporen reglas o restricciones mediante la definición de objetos tales como tablas, secuencias y sinónimos.
Temario
2.2 Tema 4: DICCIONARIO DE DATOS
2.2.1 Introducción al Diccionario de Datos
2.2.2 Estructura del Diccionario de Datos
2.2.3 Uso del Diccionario de Datos
2.2.4 Otras tablas en el Diccionario
2.2.5 La vista DBA_OBJECTS
El documento describe las diferentes clases de direcciones IP (A, B, C, D y E) y cómo se dividen los bits entre la red y la máquina anfitrión. Las clases A, B y C asignan diferentes números de bits para la red y la máquina anfitrión, variando el tamaño máximo de red y número de máquinas por red. Las clases D y E están reservadas para uso especial. También describe las direcciones IP privadas utilizadas internamente en redes privadas.
The document discusses referential integrity in relational databases. It explains that referential integrity requires primary keys and foreign keys to be consistent, so that foreign keys always match existing primary keys in linked tables. This prevents issues like orphaned records or adding records that reference nonexistent keys. Referential integrity guarantees consistency between linked tables and helps maintain data integrity.
This document provides an overview of MySQL, a relational database management system that uses SQL. It discusses the different languages used in SQL - Data Definition Language (DDL) for creating and modifying database objects, Data Manipulation Language (DML) for inserting, updating, selecting and deleting data, Data Control Language (DCL) for granting and revoking user privileges, and Transaction Control Language (TCL) for managing transactions. Each section provides examples of key commands used for each language type and their purposes.
Este minitutorial tiene como objetivo captar todos los conceptos dictados en cada sesión en el curso de Base de Datos Avanzado II, así como brindar apoyo a los alumnos de la carrera técnica de Computación e Informática, que por algún motivo no hayan asistido a clases.
UNIDAD 1. Introducción a una BD ORACLE
Logro de la Unidad de Aprendizaje
Al término de la unidad, el alumno detalla la arquitectura de la base de datos Oracle y configura la conexión de un cliente remoto a través del archivo tnsnames.ora. Asimismo manipula la información mediante la herramienta SQL*PLUS y gestiona una instancia de base de datos.
Temario
1.1 Tema 1: INTRODUCCIÓN AL SGBD ORACLE
1.1.1 Introducción a una DB relacional y a la arquitectura Oracle
1.1.2 Interactuando con la base de datos: Conexión y SQL*PLUS
1.1.3 Componentes de la Arquitectura de una BD Oracle
1.2 Tema 2: GESTIÓN DE UNA INSTANCIA ORACLE
1.2.1 Inicio de la instancia
1.2.2 Apertura de la Base de Datos
1.2.3 Cierre de la Base de Datos
1.2.4 Configuración de un cliente Oracle
Este documento proporciona una guía sobre cómo realizar consultas SQL básicas en una tabla de MySQL. Explica la sintaxis básica de la sentencia SELECT y las diferentes cláusulas que se pueden utilizar como SELECT, FROM, WHERE, ORDER BY y LIMIT. También cubre conceptos como funciones, operadores y errores comunes al realizar consultas SQL.
This document provides an overview of ASP.NET Web API including:
- A model of REST maturity with 4 levels from plain XML to hypermedia controls.
- The purpose of Web APIs as RESTful HTTP services compared to SOAP.
- Mapping from WCF to the Web API model using controllers, actions, and routing instead of endpoints.
- Features like content negotiation, model binding, and dependency injection supported in the Web API stack.
Base de datos vs sistemas de ficheros exp.2 (1)Yudy Reyes
Una base de datos es un sistema que almacena datos de forma organizada para permitir un fácil acceso y uso de la información, mientras que un sistema de archivos almacena datos de forma menos estructurada en archivos dentro de carpetas en un disco duro. El documento describe brevemente la historia y evolución de las bases de datos desde la Antigüedad hasta la actualidad dominada por sistemas relacionales como Oracle y SQL.
El documento habla sobre los índices en bases de datos. Explica que los índices mejoran el rendimiento de las consultas al facilitar una respuesta rápida. Describe la estructura de los índices, los tipos de índices (agrupados y no agrupados), y cómo se usan los índices para localizar registros de manera eficiente. También cubre temas como la creación, administración y mantenimiento de índices.
Sql DDL Lenguaje de definición de datosjosecuartas
El documento describe el lenguaje de definición de datos (DDL) de SQL. El DDL permite crear y modificar objetos de base de datos como tablas, índices y vistas mediante sentencias como CREATE TABLE y CREATE INDEX. Explica cómo se usan estas sentencias para definir la estructura de las tablas incluyendo atributos, tipos de datos, restricciones y herencia. También cubre la creación de bases de datos y el uso de tablas temporales.
El documento explica la normalización de bases de datos. Resume que la normalización transforma datos complejos en estructuras más pequeñas, lo que reduce la repetición de datos y previene errores. Explica que existen diferentes niveles de normalización, incluyendo la primera, segunda y tercera formas normales. Además, provee un ejemplo de cómo normalizar una base de datos paso a paso hasta la tercera forma normal.
Joins in SQL are used to combine data from two or more tables based on common columns between them. There are several types of joins, including inner joins, outer joins, and cross joins. Inner joins return rows that match between tables, outer joins return all rows including non-matching rows, and cross joins return the cartesian product between tables.
The PPT would provide the Database Normalization is to restructure the logical data model of a database to:
Eliminate Redundancy
Organize Data Efficiently
Reduce the potential for Data Anomalies.
Database normalization is the process of refining the data in accordance with a series of normal forms. This is done to reduce data redundancy and improve data integrity. This process divides large tables into small tables and links them using relationships.
Here is the link of full article: https://www.support.dbagenesis.com/post/database-normalization
MySQL is a popular and freely available open-source relational database management system (RDBMS). It stores data in tables and relationships between data are also stored in tables. MySQL uses SQL and works on many operating systems. It has commands for data definition (CREATE, ALTER, DROP), data manipulation (SELECT, INSERT, UPDATE, DELETE), transaction control (COMMIT, ROLLBACK), and data access control (GRANT, REVOKE). Joins allow retrieving data from multiple tables by linking rows together. Common join types are inner joins, outer joins, and self joins.
Este documento proporciona instrucciones paso a paso para crear una base de datos MYSQL usando líneas de comando. Primero, abre una consola de comandos y navega a la carpeta de instalación de MYSQL Server. Luego, inicia sesión en MYSQL y verifica las bases de datos existentes. A continuación, crea una nueva base de datos llamada "Real_Madrid" y selecciónala. Finalmente, crea una tabla llamada "jugadores" dentro de la base de datos recién creada.
An introduction to database Normalization. An essential part of logical database design for relational databases. The presentation also has little coverage of related concepts like functional dependency, data anomalies, dependency preservation and lossless decomposition.
SQL es un lenguaje de consulta estructurado normalizado utilizado para consultar, modificar o eliminar datos en una base de datos. Contiene comandos, cláusulas, operadores y funciones como SELECT, FROM, WHERE, GROUP BY, HAVING, ORDER BY, COUNT, SUM, MAX, MIN, AVG, AND, OR para realizar consultas. El documento explica los componentes básicos de SQL y proporciona ejemplos de su uso.
This document discusses SQL fundamentals including what is data, databases, database management systems, and relational databases. It defines key concepts like tables, rows, columns, and relationships. It describes different types of DBMS like hierarchical, network, relational, and object oriented. The document also covers SQL commands like SELECT, INSERT, UPDATE, DELETE, constraints, functions and more. It provides examples of SQL queries and functions.
Este minitutorial tiene como objetivo captar todos los conceptos dictados en cada sesión en el curso de Base de Datos Avanzado II, así como brindar apoyo a los alumnos de la carrera técnica de Computación e Informática, que por algún motivo no hayan asistido a clases.
UNIDAD 2. Creación de estructuras de datos
Logro de la Unidad de Aprendizaje
Al término de la unidad, el alumno diseña e implementa modelos de datos que incorporen reglas o restricciones mediante la definición de objetos tales como tablas, secuencias y sinónimos.
Temario
2.2 Tema 4: DICCIONARIO DE DATOS
2.2.1 Introducción al Diccionario de Datos
2.2.2 Estructura del Diccionario de Datos
2.2.3 Uso del Diccionario de Datos
2.2.4 Otras tablas en el Diccionario
2.2.5 La vista DBA_OBJECTS
El documento describe las diferentes clases de direcciones IP (A, B, C, D y E) y cómo se dividen los bits entre la red y la máquina anfitrión. Las clases A, B y C asignan diferentes números de bits para la red y la máquina anfitrión, variando el tamaño máximo de red y número de máquinas por red. Las clases D y E están reservadas para uso especial. También describe las direcciones IP privadas utilizadas internamente en redes privadas.
The document discusses referential integrity in relational databases. It explains that referential integrity requires primary keys and foreign keys to be consistent, so that foreign keys always match existing primary keys in linked tables. This prevents issues like orphaned records or adding records that reference nonexistent keys. Referential integrity guarantees consistency between linked tables and helps maintain data integrity.
This document provides an overview of MySQL, a relational database management system that uses SQL. It discusses the different languages used in SQL - Data Definition Language (DDL) for creating and modifying database objects, Data Manipulation Language (DML) for inserting, updating, selecting and deleting data, Data Control Language (DCL) for granting and revoking user privileges, and Transaction Control Language (TCL) for managing transactions. Each section provides examples of key commands used for each language type and their purposes.
Este minitutorial tiene como objetivo captar todos los conceptos dictados en cada sesión en el curso de Base de Datos Avanzado II, así como brindar apoyo a los alumnos de la carrera técnica de Computación e Informática, que por algún motivo no hayan asistido a clases.
UNIDAD 1. Introducción a una BD ORACLE
Logro de la Unidad de Aprendizaje
Al término de la unidad, el alumno detalla la arquitectura de la base de datos Oracle y configura la conexión de un cliente remoto a través del archivo tnsnames.ora. Asimismo manipula la información mediante la herramienta SQL*PLUS y gestiona una instancia de base de datos.
Temario
1.1 Tema 1: INTRODUCCIÓN AL SGBD ORACLE
1.1.1 Introducción a una DB relacional y a la arquitectura Oracle
1.1.2 Interactuando con la base de datos: Conexión y SQL*PLUS
1.1.3 Componentes de la Arquitectura de una BD Oracle
1.2 Tema 2: GESTIÓN DE UNA INSTANCIA ORACLE
1.2.1 Inicio de la instancia
1.2.2 Apertura de la Base de Datos
1.2.3 Cierre de la Base de Datos
1.2.4 Configuración de un cliente Oracle
Este documento proporciona una guía sobre cómo realizar consultas SQL básicas en una tabla de MySQL. Explica la sintaxis básica de la sentencia SELECT y las diferentes cláusulas que se pueden utilizar como SELECT, FROM, WHERE, ORDER BY y LIMIT. También cubre conceptos como funciones, operadores y errores comunes al realizar consultas SQL.
Este minitutorial tiene como objetivo captar todos los conceptos dictados en cada sesión en el curso de Base de Datos Avanzado II, así como brindar apoyo a los alumnos de la carrera técnica de Computación e Informática, que por algún motivo no hayan asistido a clases.
UNIDAD 2. Creación de estructuras de datos
Logro de la Unidad de Aprendizaje
Al término de la unidad, el alumno diseña e implementa modelos de datos que incorporen reglas o restricciones mediante la definición de objetos tales como tablas, secuencias y sinónimos.
Temario
2.1 Tema 3: CREACIÓN DE ESTRUCTURAS DE DATOS
2.1.1 Creación y modificación de tablas
2.1.2 Creación de restricciones
2.1.3 Manejo de índices
2.1.4 Manejo de secuencias
2.1.5 Manejo de sinónimos
Este documento presenta los datos de un proyecto de grado sobre bases de datos en Access realizado por dos estudiantes para el Colegio Nacional Nicolás Esguerra. Contiene la portada, índice, introducción, objetivos, marco teórico, metodología y desarrollo del proyecto. El documento proporciona la estructura y contenido básico para un proyecto de grado sobre el uso de bases de datos en Access.
Este documento describe los comandos SQL para manipular bases de datos y tablas en MySQL. Explica cómo crear, eliminar y modificar bases de datos y tablas, así como consultar información sobre ellas. También cubre conceptos como los tipos de datos soportados y las opciones de configuración de las bases de datos como el conjunto de caracteres y el cotejamiento.
Este documento proporciona instrucciones para crear una base de datos en Visual FoxPro, incluyendo la creación de tablas, índices, vistas, relaciones entre tablas y consultas SQL. Explica cómo definir campos, formatos, validaciones y valores predeterminados en las tablas, y cómo establecer relaciones uno a uno y uno a muchos entre las tablas. También cubre la creación de vistas locales y remotas, y el uso de funciones como SUM, MAX, MIN y COUNT en consultas SQL.
Este documento presenta información sobre el diseño de bases de datos en Visual FoxPro, incluyendo la creación de tablas, índices, relaciones entre tablas, vistas locales y remotas, y consultas SQL. Explica los pasos para definir campos, tipos de datos, formatos y validaciones en las tablas, así como la generación de integridad referencial entre tablas relacionadas.
3. Seleccione el tipo de base de datos (SQL Server, Oracle, Access, etc) y luego
Next:
4. Introduzca la información de la base de datos:
- Nombre de la base de datos
- Servidor
- Puerto
- Usuario
- Contraseña
5. Luego de configurar presione Test Connection, si es correcta presione Next y
Finish.
6. La conexión se habrá creado, seleccionela y presione OK.
Ahora si puede crear la vista remota:
1. Seleccione la conexión cread
Este documento contiene 33 preguntas sobre SQL que abarcan conceptos como las partes de SQL (DDL, DML, DCL), motores de almacenamiento, tipos de datos, cláusulas como ON DELETE y ON UPDATE, diferencias entre sentencias como TRUNCATE y DELETE, y operaciones JOIN. También incluye preguntas sobre configuración de servidores MySQL y creación de usuarios.
Este documento presenta una introducción a las bases de datos. Explica la estructura básica de una base de datos, incluyendo el modelo relacional de datos, el submodelo de datos y el esquema de almacenamiento. También describe la diferencia entre una base de datos y un sistema de gestión de base de datos, y los pasos típicos en el diseño de una base de datos, como determinar el propósito, dividir la información en tablas y especificar claves primarias. Además, resume las operaciones básicas como selección, proyección
Este documento presenta un tutorial sobre MySQL para principiantes. Explica conceptos básicos de SQL y MySQL como crear bases de datos y tablas, insertar y consultar datos. Luego detalla diversos temas como tipos de datos, claves primarias, autoincremento, joins y más. El objetivo es que cualquier persona pueda aprender MySQL de forma sencilla a través de conceptos teóricos, ejercicios resueltos y ejercicios prácticos.
MySQL es un sistema de gestión de bases de datos relacional de código abierto que utiliza el lenguaje SQL. Se puede instalar en Windows de forma local o a través de paquetes como Xampp o Wampp. Estos paquetes permiten crear y administrar bases de datos locales sin necesidad de un servidor web. El lenguaje SQL se usa para crear, modificar y consultar bases de datos, con comandos como SELECT, INSERT y UPDATE.
MySQL es un sistema de gestión de bases de datos relacional de código abierto que utiliza el lenguaje de consultas SQL. Se puede instalar en Windows de forma local o junto con paquetes como Xampp y Wampp. Estos paquetes permiten crear y probar bases de datos en el equipo local sin necesidad de un servidor web. El documento explica cómo instalar MySQL, crear bases de datos y tablas mediante la línea de comandos o PhpMyAdmin, e introducir datos básicos en SQL.
Este documento presenta un resumen de un proyecto sobre bases de datos Access 2010 desarrollado por Johan Steven Rivera Romero y Julian Camilo Rivera Garcia. El proyecto incluye una introducción a bases de datos, objetivos generales y específicos, planteamiento del problema, marco teórico sobre diseño de tablas, bases de datos relacionales y tipos de consultas, y detalles sobre los materiales y metodología utilizados.
Este documento presenta un resumen de un proyecto sobre bases de datos Access 2010 desarrollado por Johan Steven Rivera Romero y Julian Camilo Rivera Garcia. El proyecto incluye una introducción a bases de datos, objetivos generales y específicos, planteamiento del problema, marco teórico sobre diseño de tablas, bases de datos relacionales y tipos de consultas, y detalles sobre los materiales y metodología utilizados.
Este documento presenta un resumen de tres oraciones de un trabajo sobre bases de datos Access 2010. El trabajo fue realizado por Johan Steven Rivera Romero y Julian Camilo Rivera Garcia como requisito para el tercer periodo académico de 2015 en el Colegio Nacional Nicolas Esguerra. El trabajo analiza conceptos sobre diseño de bases de datos, tablas, consultas y tipos de consultas en Access 2010.
Este documento describe diferentes tipos de filtros y gráficos en Excel. Explica que los filtros permiten seleccionar un subconjunto de datos dentro de un rango para trabajar con ellos, mientras que los gráficos estadísticos presentan datos de forma visual. También cubre tablas dinámicas, las cuales pueden cambiar dinámicamente la información agrupada al rotar filas o columnas.
Este documento describe cómo realizar inyección SQL en una base de datos SQL Server mediante la función CONVERT(). Explica cómo listar las tablas, campos y registros de la base de datos aprovechando errores generados al convertir datos de tipos incompatibles. Finalmente, muestra ejemplos de consultas SQL inyectadas para extraer esta información, como la versión de SQL Server, el usuario, permisos, nombres de tablas, campos y valores de registros.
Este documento describe las características principales del lenguaje SQL. Explica que SQL está basado en el cálculo relacional pero incluye capacidades adicionales como comandos para manipular datos e incluir operaciones aritméticas. También describe los comandos SELECT, JOIN, agregados, subconsultas y operaciones de unión, intersección y excepción. Por último, menciona que SQL incluye comandos para definir datos como CREATE TABLE.
El documento describe los pasos para crear un esquema de base de datos en MySQL Workbench. El estudiante creará un esquema con 5 tablas (clientes, facturas, productos, ventas, detalleventas) y sus campos respectivos. Luego generará un diagrama EER para visualizar las relaciones entre las tablas, como una relación uno a uno entre facturas y ventas, y relaciones uno a muchos entre otras tablas. Finalmente, el estudiante capturará imágenes del esquema y del shell de MySQL para verificar la creación de la base de
Similar a Guía 03. Consultas MySQL sobre varias tablas. Composición interna - José J Sánchez H (20)
Este documento presenta el plan de evaluación de la unidad curricular de Redes Avanzadas para el período II-2021. El plan incluye cinco unidades de entrega evaluadas a través de foros de discusión, prácticas de laboratorio con informes, y ponderaciones. Los contenidos a evaluar son tecnologías LAN Ethernet, diseño de redes, VLAN, protocolos de enrutamiento, servicios de red, ACL y VPN.
Este documento presenta cuatro casos de estudio que involucran consultas SQL a bases de datos relacionales. Cada caso de estudio describe un modelo de base de datos y solicita que se cree el modelo físico, se carguen datos de ejemplo y se ejecuten varias consultas SQL sobre una o más tablas. El objetivo es que el lector practique la construcción de sentencias SQL utilizando diferentes tipos de consultas como composición interna, composición externa y resumen.
El documento presenta 8 casos de estudio para normalizar bases de datos relacionadas con el control de despachos, control de viajes, facturación de un supermercado, registro de etapas ciclísticas, y control de recaudación de impuestos. Para cada caso se describen las entidades y atributos relevantes, y se presentan datos de ejemplo para cada tabla. El objetivo es que los estudiantes apliquen los conocimientos de normalización de bases de datos y lleven cada caso hasta la 3FN.
El documento presenta cinco casos de estudio para el diseño de bases de datos relacionales. El primer caso trata sobre un videoclub y registra películas, géneros, directores, actores, DVDs y alquileres de socios. El segundo caso trata sobre una universidad y registra docentes, estudiantes, tutorías, torneos y clubes académicos. El tercer caso trata sobre un centro de terapia física y registra médicos, pacientes, consultas, patologías, dietas y ejercicios. El cuarto caso tr
Este documento presenta 8 ejercicios de normalización de bases de datos hasta la tercera forma normal. Los ejercicios incluyen tablas de facturación, pagos de proyectos, gastos de empleados, ventas, órdenes, horarios de trabajo, préstamos de libros. El objetivo es normalizar cada tabla eliminando las dependencias funcionales transitorias y anómalas.
El documento describe los requisitos para crear una base de datos para gestionar la formación de empleados de una empresa. La base de datos almacenará información sobre cursos (código, nombre, descripción, horas, coste), empleados (datos personales, capacitado para impartir cursos), y la relación entre cursos y empleados (un empleado puede ser docente o alumno de un curso).
El documento presenta 9 ejercicios de modelado entidad-relación (MER) para diferentes casos de uso de bases de datos. Cada ejercicio describe los requisitos funcionales y de información para una base de datos relacional específica. Los ejercicios cubren temas como seguros de automóviles, alquiler de vehículos, universidades, recetas de cocina, taxis, tiendas departamentales, proyectos comunitarios, parques naturales y almacenamiento de fotos.
El documento presenta 11 ejercicios para diseñar diagramas entidad-relación (E/R) que modelen diferentes situaciones. Cada ejercicio describe las entidades e identifica las relaciones relevantes entre ellas para una base de datos, como las relaciones entre alumnos, asignaturas, profesores y cursos escolares (Ejercicio 1), clientes, reservas y vehículos de alquiler (Ejercicio 5), y proveedores, clientes, productos y ventas para una empresa (Ejercicio 11).
Este documento presenta el plan de actividades de evaluación para la unidad curricular de Base de Datos en la Universidad Politécnica Territorial Andrés Eloy Blanco. El plan incluye cuatro semanas con diferentes estrategias de evaluación como foros de discusión, cuestionarios, infografías y tareas prácticas sobre diseño de modelos de datos, normalización de bases de datos y consultas SQL. Las actividades están distribuidas en cuatro unidades y suman un total de 100 puntos.
Este documento presenta el perfil del profesor José Ricardo Tillero Giménez de la Universidad Politécnica Territorial Andrés Eloy Blanco. El profesor Tillero enseñará la unidad curricular de Base de Datos e impartirá asesorías los martes y jueves de 8 am a 12 pm a través de Telegram. El profesor Tillero tiene más de 20 años de experiencia en desarrollo de software, bases de datos y redes.
El documento presenta el plan de actividades de 15 semanas para la unidad curricular de Base de Datos. Cubre cuatro unidades temáticas: 1) Bases de datos y sistemas de gestión de bases de datos, 2) Modelo conceptual de datos, 3) Modelo relacional y normalización, y 4) Lenguaje SQL. Cada semana incluye objetivos, temas, actividades como debates, pruebas, tareas y prácticas sobre un sistema gestor de bases de datos, con porcentajes de evaluación. El plan concluye con la negociación de notas y encuestas
Este documento presenta una introducción a las bases de datos y los sistemas de gestión de bases de datos relacionales (SGBDR). Define una base de datos, describe los principales modelos de bases de datos como el jerárquico, de red, relacional, orientado a objetos y orientado a documentos, y explica los componentes clave de un SGBDR como tablas, campos, filas y ejemplos de SGBDR populares.
Este documento presenta los resultados de un curso sobre diseño de redes LAN, VLAN, enrutamiento estático y dinámico y ACL-VPN. Contiene la cédula, nombre y apellido de 13 estudiantes junto con sus calificaciones en cada unidad y acumulado. La mayoría de los estudiantes aprobaron el curso, excepto por dos que reprobaron.
Este documento presenta los resultados de los estudiantes en 5 áreas (JavaScript Básico, DOM, Validar, jQuery) y calcula su nota final. De los 30 estudiantes, 11 aprobaron con notas entre 11.5 y 15, mientras que 2 reprobaron por poco con notas entre 9.75 y 10.25. Los demás reprobaron obtendo notas menores a 10.
Este documento presenta los resultados de varios estudiantes en cuatro secciones (JavaScript Básico, DOM, Validar y jQuery) de un curso. Diez estudiantes aprobaron con notas de 12 a 17, mientras que el resto reprobaron con nota 0. El documento incluye el número de cédula, nombre y apellido de cada estudiante junto con su calificación en cada sección y nota final.
Este documento presenta los resultados de 14 estudiantes en una asignatura de base de datos. Incluye la cédula, apellido y nombre de cada estudiante, sus calificaciones en diferentes unidades y tareas del curso, su acumulado total y nota final. Al final indica que la asignatura es Base de Datos.
El documento explica qué son las VLAN y sus características principales. Una VLAN permite crear redes lógicas independientes dentro de una misma red física agrupando estaciones de forma lógica independientemente de su ubicación física. Las VLAN mejoran el rendimiento de la red al reducir los dominios de difusión y permiten una administración y segmentación más flexible de la red.
Este documento proporciona instrucciones para redistribuir rutas entre los protocolos de enrutamiento dinámico RIP, OSPF y EIGRP. Explica cómo configurar la redistribución de rutas desde RIP hacia OSPF y EIGRP, desde EIGRP hacia RIP y OSPF, y desde OSPF hacia EIGRP y RIP. También incluye ejemplos de configuración para redistribuir rutas entre EIGRP y OSPF, EIGRP y RIP, y OSPF y RIP.
Este documento describe los conceptos y configuraciones de redistribución de protocolos de ruteo. Explica cómo redistribuir rutas entre protocolos como RIP, IGRP, EIGRP, OSPF, IS-IS y rutas estáticas. También cubre temas como métricas, distancias administrativas y cómo evitar problemas de redistribución. Incluye ejemplos de configuración para redistribuir entre diferentes protocolos de ruteo.
Este documento presenta una introducción a jQuery en 5 sesiones. Cubre conceptos como selectores y manipulación del DOM con jQuery, manejo de eventos, efectos, y el uso de Ajax. Cada sesión incluye ejemplos de código y enlaces a lecturas recomendadas para profundizar en cada tema.
Ofrecemos herramientas y metodologías para que las personas con ideas de negocio desarrollen un prototipo que pueda ser probado en un entorno real.
Cada miembro puede crear su perfil de acuerdo a sus intereses, habilidades y así montar sus proyectos de ideas de negocio, para recibir mentorías .
5. Capítulo 1
Consultas sobre varias tablas.
Composición interna y cruzada
Las consultas multitabla nos permiten consultar información en más de una tabla. La única diferencia respecto
a las consultas sencillas es que vamos a tener que especificar en la cláusula FROM cuáles son las tablas que
vamos a usar y cómo las vamos a relacionar entre sí.
Para realizar este tipo de consultas podemos usar dos alternativas, la sintaxis de SQL 1 (SQL-86), que consiste
en realizar el producto cartesiano de las tablas y añadir un filtro para relacionar los datos que tienen en común,
y la sintaxis de SQL 2 (SQL-92 y SQL-2003) que incluye todas las cláusulas de tipo JOIN.
1.1 Consultas multitabla SQL 1
1.1.1 Composiciones cruzadas (Producto cartesiano)
El producto cartesiano de dos conjuntos, es una operación que consiste en obtener otro conjunto cuyos ele-
mentos son todas las parejas que pueden formarse entre los dos conjuntos. Por ejemplo, tendríamos que
coger el primer elemento del primer conjunto y formar una pareja con cada uno de los elementos del segundo
conjunto. Una vez hecho esto, repetimos el mismo proceso para cada uno de los elementos del primer conjunto.
4
6. Unidad Didáctica 6. Consultas sobre varias tablas. Composición interna y cruzadaIES Celia Viñas (Almería) - 2019/2020
Imagen: Imagen extraída de Wikipedia. Autor: GermanX
Ejemplo
Suponemos que tenemos una base de datos con dos tablas: empleado y departamento.
SELECT *
FROM empleado;
+--
------+-----------+--------------+-----------+-----------+---------------------+
| codigo | nif | nombre | apellido1 | apellido2 | codigo_departamento
|
+--
------+-----------+--------------+-----------+-----------+---------------------+
| 1 | 32481596F | Aarón | Rivero | Gómez | 1
|
| 2 | Y5575632D | Adela | Salas | Díaz | 2
|
| 3 | R6970642B | Adolfo | Rubio | Flores | 3
|
+--
------+-----------+--------------+-----------+-----------+---------------------+
SELECT *
FROM departamento;
+--------+------------------+-------------+
| codigo | nombre | presupuesto |
José Juan Sánchez Hernández 5
7. Unidad Didáctica 6. Consultas sobre varias tablas. Composición interna y cruzadaIES Celia Viñas (Almería) - 2019/2020
+--------+------------------+-------------+
| 1 | Desarrollo | 120000 |
| 2 | Sistemas | 150000 |
| 3 | Recursos Humanos | 280000 |
+--------+------------------+-------------+
El producto cartesiano de las dos tablas se realiza con la siguiente consulta:
SELECT *
FROM empleado, departamento;
El resultado sería el siguiente:
+--------+-----------+--------+-----------+-----------+---------------------+--------------------
| codigo | nif | nombre | apellido1 | apellido2 | codigo_departamento |
codigo | nombre | presupuesto | gastos |
+--------+-----------+--------+-----------+-----------+---------------------+--------------------
| 1 | 32481596F | Aarón | Rivero | Gómez | 1 | 1
| Desarrollo | 120000 | 6000 |
| 2 | Y5575632D | Adela | Salas | Díaz | 2 | 1
| Desarrollo | 120000 | 6000 |
| 3 | R6970642B | Adolfo | Rubio | Flores | 3 | 1
| Desarrollo | 120000 | 6000 |
| 1 | 32481596F | Aarón | Rivero | Gómez | 1 | 2
| Sistemas | 150000 | 21000 |
| 2 | Y5575632D | Adela | Salas | Díaz | 2 | 2
| Sistemas | 150000 | 21000 |
| 3 | R6970642B | Adolfo | Rubio | Flores | 3 | 2
| Sistemas | 150000 | 21000 |
| 1 | 32481596F | Aarón | Rivero | Gómez | 1 | 3
| Recursos Humanos | 280000 | 25000 |
| 2 | Y5575632D | Adela | Salas | Díaz | 2 | 3
| Recursos Humanos | 280000 | 25000 |
| 3 | R6970642B | Adolfo | Rubio | Flores | 3 | 3
| Recursos Humanos | 280000 | 25000 |
+--------+-----------+--------+-----------+-----------+---------------------+--------------------
1.1.2 Composiciones internas (Intersección)
La intersección de dos conjuntos es una operación que resulta en otro conjunto que contiene sólo los ele-
mentos comunes que existen en ambos conjuntos.
José Juan Sánchez Hernández 6
8. Unidad Didáctica 6. Consultas sobre varias tablas. Composición interna y cruzadaIES Celia Viñas (Almería) - 2019/2020
Imagen: Imagen extraída de Wikipedia. Autor: Kismalac.
Ejemplo
Para poder realizar una operación de intersección entre las dos tablas debemos utilizar la cláusula WHERE para
indicar la columna con la que queremos relacionar las dos tablas. Por ejemplo, para obtener un listado de los
empleados y el departamento donde trabaja cada uno podemos realizar la siguiente consulta:
SELECT *
FROM empleado, departamento
WHERE empleado.codigo_departamento = departamento.codigo
El resultado sería el siguiente:
José Juan Sánchez Hernández 7
9. Unidad Didáctica 6. Consultas sobre varias tablas. Composición interna y cruzadaIES Celia Viñas (Almería) - 2019/2020
+--------+-----------+--------+-----------+-----------+---------------------+--------+-----------
| codigo | nif | nombre | apellido1 | apellido2 | codigo_departamento |
codigo | nombre | presupuesto | gastos |
+--------+-----------+--------+-----------+-----------+---------------------+--------+-----------
| 1 | 32481596F | Aarón | Rivero | Gómez | 1 | 1
| Desarrollo | 120000 | 6000 |
| 2 | Y5575632D | Adela | Salas | Díaz | 2 | 2
| Sistemas | 150000 | 21000 |
| 3 | R6970642B | Adolfo | Rubio | Flores | 3 | 3
| Recursos Humanos | 280000 | 25000 |
+--------+-----------+--------+-----------+-----------+---------------------+--------+-----------
Nota: Tenga en cuenta que con la operación de intersección sólo obtendremos los elementos de existan en
ambos conjuntos. Por lo tanto, en el ejemplo anterior puede ser que existan filas en la tabla empleado que no
aparecen en el resultado porque no tienen ningún departamento asociado, al igual que pueden existir filas en
la tabla departamento que no aparecen en el resultado porque no tienen ningún empleado asociado.
José Juan Sánchez Hernández 8
10. Unidad Didáctica 6. Consultas sobre varias tablas. Composición interna y cruzadaIES Celia Viñas (Almería) - 2019/2020
1.2 Consultas multitabla SQL 2
1.2.1 Composiciones cruzadas
• Producto cartesiano
– CROSS JOIN
José Juan Sánchez Hernández 9
11. Unidad Didáctica 6. Consultas sobre varias tablas. Composición interna y cruzadaIES Celia Viñas (Almería) - 2019/2020
Ejemplo de CROSS JOIN:
SELECT *
FROM empleado CROSS JOIN departamento
Esta consulta nos devolvería el producto cartesiano de las dos tablas.
1.2.2 Composiciones internas
• Join interna
– INNER JOIN o JOIN
– NATURAL JOIN
Ejemplo de INNER JOIN:
SELECT *
FROM empleado INNER JOIN departamento
ON empleado.codigo_departamento = departamento.codigo
Esta consulta nos devolvería la intersección entre las dos tablas.
La palabra reservada INNER es opcional, de modo que la consulta anterior también se puede escribir así:
SELECT *
FROM empleado JOIN departamento
ON empleado.codigo_departamento = departamento.codigo
NOTA: Tenga en cuenta que si olvidamos incluir la cláusula ON obtendremos el producto cartesiano de las
dos tablas.
Por ejemplo, la siguiente consulta nos devolverá el producto cartesiano de las tablas empleado y
departamento.
SELECT *
FROM empleado INNER JOIN departamento
Ejemplo de NATURAL JOIN:
SELECT *
FROM empleado NATURAL JOIN departamento
José Juan Sánchez Hernández 10
12. Unidad Didáctica 6. Consultas sobre varias tablas. Composición interna y cruzadaIES Celia Viñas (Almería) - 2019/2020
Esta consulta nos devolvería la intersección de las dos tablas, pero utilizaría las columnas que tengan el mismo
nombre para relacionarlas. En este caso usaría las columnas código y nombre. Sólo deberíamos utilizar una
composición de tipo NATURAL JOIN cuando estemos seguros que los nombres de las columnas sobre las que
quiero relacionar las dos tablas se llaman igual en las dos tablas. Lo normal es que no suelan tener el mismo
nombre y que debamos usar una composición de tipo INNER JOIN.
1.2.3 Composiciones externas
• Join externa
– LEFT OUTER JOIN
– RIGHT OUTER JOIN
– FULL OUTER JOIN (No implementada en MySQL)
– NATURAL LEFT OUTER JOIN
– NATURAL RIGHT OUTER JOIN
Ejemplo de LEFT OUTER JOIN:
SELECT *
FROM empleado LEFT JOIN departamento
ON empleado.codigo_departamento = departamento.codigo
Esta consulta devolverá todas las filas de la tabla que hemos colocado a la izquierda de la composición, en
este caso la tabla empleado. Y relacionará las filas de la tabla de la izquierda (empleado) con las filas de la
tabla de la derecha (departamento) con las que encuentre una coincidencia. Si no encuentra ninguna coinci-
dencia, se mostrarán los valores de la fila de la tabla izquierda (empleado) y en los valores de la tabla derecha
(departamento) donde no ha encontrado una coincidencia mostrará el valor NULL.
José Juan Sánchez Hernández 11
13. Unidad Didáctica 6. Consultas sobre varias tablas. Composición interna y cruzadaIES Celia Viñas (Almería) - 2019/2020
Ejemplo de RIGHT OUTER JOIN:
José Juan Sánchez Hernández 12
14. Unidad Didáctica 6. Consultas sobre varias tablas. Composición interna y cruzadaIES Celia Viñas (Almería) - 2019/2020
SELECT *
FROM empleado RIGHT JOIN departamento
ON empleado.codigo_departamento = departamento.codigo
Esta consulta devolverá todas las filas de la tabla que hemos colocado a la derecha de la composición, en este
caso la tabla departamento. Y relacionará las filas de la tabla de la derecha (departamento) con las filas de la
tabladelaizquierda(empleado)conlasqueencuentreunacoincidencia.Sinoencuentraningunacoincidencia,
se mostrarán los valores de la fila de la tabla derecha (departamento) y en los valores de la tabla izquierda
(empleado) donde no ha encontrado una coincidencia mostrará el valor NULL.
José Juan Sánchez Hernández 13
15. Unidad Didáctica 6. Consultas sobre varias tablas. Composición interna y cruzadaIES Celia Viñas (Almería) - 2019/2020
Ejemplo de FULL OUTER JOIN:
La composición FULL OUTER JOIN no está implementada en MySQL, por lo tanto para poder simular esta
operación será necesario hacer uso del operador UNION, que nos realiza la union del resultado de dos consultas.
José Juan Sánchez Hernández 14
16. Unidad Didáctica 6. Consultas sobre varias tablas. Composición interna y cruzadaIES Celia Viñas (Almería) - 2019/2020
El resultado esperado de una composición de tipo FULL OUTER JOIN es obtener la intersección de las dos
tablas, junto las filas de ambas tablas que no se puedan combinar. Dicho con otras palabras, el resultado sería
el equivalente a realizar la union de una consulta de tipo LEFT JOIN y una consultas de tipo RIGHT JOIN sobre
las mismas tablas.
SELECT *
FROM empleado LEFT JOIN departamento
ON empleado.codigo_departamento = departamento.codigo
UNION
SELECT
FROM empleado RIGHT JOIN departamento
ON empleado.codigo_departamento = departamento.codigo
Ejemplo de NATURAL LEFT JOIN:
SELECT *
FROM empleado NATURAL LEFT JOIN departamento
Esta consulta realiza un LEFT JOIN entre las dos tablas, la única diferencia es que en este caso no es necesario
utilizar la cláusula ON para indicar sobre qué columna vamos a relacionar las dos tablas. En este caso las tablas
se van a relacionar sobre aquellas columnas que tengan el mismo nombre. Por lo tanto, sólo deberíamos
utilizar una composición de tipo NATURAL LEFT JOIN cuando estemos seguros de que los nombres de las
columnas sobre las que quiero relacionar las dos tablas se llaman igual en las dos tablas.
1.3 El orden en las tablas no afecta al resultado final
Estas dos consultas devuelven el mismo resultado:
SELECT *
FROM empleado INNER JOIN departamento
ON empleado.codigo_departamento = departamento.codigo
SELECT *
FROM departamento INNER JOIN empleado
ON empleado.codigo_departamento = departamento.codigo
José Juan Sánchez Hernández 15
17. Unidad Didáctica 6. Consultas sobre varias tablas. Composición interna y cruzadaIES Celia Viñas (Almería) - 2019/2020
1.4 Podemos usar alias en las tablas
SELECT *
FROM empleado AS e INNER JOIN departamento AS d
ON e.codigo_departamento = d.codigo
SELECT *
FROM empleado e INNER JOIN departamento d
ON e.codigo_departamento = d.codigo
1.5 Unir tres o más tablas
Ejemplo:
SELECT *
FROM cliente INNER JOIN empleado
ON cliente.codigo_empleado_rep_ventas = empleado.codigo_empleado
INNER JOIN pago
ON cliente.codigo_cliente = pago.codigo_cliente;
1.6 Utilizar la misma tabla varias veces
TODO
1.7 Unir una tabla consigo misma (self-equi-join)
Para poder hacer una operación de INNER JOIN sobre la misma tabla es necesario utilizar un alias para la tabla.
AcontinuaciónsemuestraunejemplodelasdosformasposiblesdehacerunaoperacióndeINNER JOIN sobre
la misma tablas haciendo uso de alias.
Ejemplo:
SELECT empleado.nombre, empleado.apellido1, empleado.apellido2, jefe.nombre, jefe.
apellido1, jefe.apellido2
FROM empleado INNER JOIN empleado AS jefe
ON empleado.codigo_jefe = jefe.codigo_empleado
José Juan Sánchez Hernández 16
18. Unidad Didáctica 6. Consultas sobre varias tablas. Composición interna y cruzadaIES Celia Viñas (Almería) - 2019/2020
SELECT empleado.nombre, empleado.apellido1, empleado.apellido2, jefe.nombre, jefe.
apellido1, jefe.apellido2
FROM empleado INNER JOIN empleado jefe
ON empleado.codigo_jefe = jefe.codigo_empleado
1.8 Uniones equivalentes (equi-joins) y Uniones no equivalentes (non-
equi-joins)
TODO
José Juan Sánchez Hernández 17
19. Capítulo 2
Errores comunes
1. Nos olvidamos de incluir en el WHERE la condición que nos relaciona las dos tablas.
Consulta incorrecta
SELECT *
FROM producto, fabricante
WHERE fabricante.nombre = 'Lenovo';
Consulta correcta
SELECT *
FROM producto, fabricante
WHERE producto.codigo_fabricante = fabricante.codigo AND fabricante.nombre = '
Lenovo';
2. Nos olvidamos de incluir ON en las consultas de tipo INNER JOIN.
Consulta incorrecta
SELECT *
FROM producto INNER JOIN fabricante
WHERE fabricante.nombre = 'Lenovo';
Consulta correcta
SELECT *
FROM producto INNER JOIN fabricante
ON producto.codigo_fabricante = fabricante.codigo
WHERE fabricante.nombre = 'Lenovo';
18
20. Unidad Didáctica 6. Consultas sobre varias tablas. Composición interna y cruzadaIES Celia Viñas (Almería) - 2019/2020
3. Relacionamos las tablas utilizando nombres de columnas incorrectos.
Consulta incorrecta
SELECT *
FROM producto INNER JOIN fabricante
ON producto.codigo = fabricante.codigo;
Consulta correcta
SELECT *
FROM producto INNER JOIN fabricante
ON producto.codigo_fabricante = fabricante.codigo;
4. Cuando hacemos la intersección de tres tablas con INNER JOIN nos olvidamos de incluir ON en alguna
de las intersecciones.
Consulta incorrecta
SELECT DISTINCT nombre_cliente, nombre, apellido1
FROM cliente INNER JOIN empleado
INNER JOIN pago
ON cliente.codigo_cliente = pago.codigo_cliente;
Consulta correcta
SELECT DISTINCT nombre_cliente, nombre, apellido1
FROM cliente INNER JOIN empleado
ON cliente.codigo_empleado_rep_ventas = empleado.codigo_empleado
INNER JOIN pago
ON cliente.codigo_cliente = pago.codigo_cliente;
José Juan Sánchez Hernández 19
21. Capítulo 3
Referencias
• Wikibook SQL Exercises.
• Tutorial SQL de w3resource.
• MySQL Join Types by Steve Stedman.
• Guía visual de SQL Joins.
• Bases de Datos. 2ª Edición. Grupo editorial Garceta. Iván López Montalbán, Manuel de Castro Vázquez y
John Ospino Rivas.
• INNER JOIN.
• LEFT JOIN.
• RIGHT JOIN.
20
22. Capítulo 4
Licencia
Esta obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Inter-
nacional.
21