SlideShare una empresa de Scribd logo
1 de 114
Descargar para leer sin conexión
By LeaySazory & azmeruq
1. Introducción a Base de Datos
By LeaySazory & azmeruq
By LeaySazory & azmeruq
By LeaySazory & azmeruq
ÍNDICE
Introducción a base de datos ………………………………………..
3
Modelo relacional
………………………………………………………… 24
Lenguaje estructurado de consulta (SQL) ……………………… 41
Almacén de datos
…………………………………………………………. 64
Software de diseño de base de datos …………………………….
73
Funciones en SQL
………………………………………………………….. 76
By LeaySazory & azmeruq
1.1. ¿Qué es un sistema gestor de
bases de datos?
Un sistema gestor de bases de datos
(SGBD) consiste en una colección de
datos interrelacionados y un conjunto de
programas para acceder a dichos datos.
Un sistema gestor de base de datos
(SGBD) o Database Management System
(DBMS)
By LeaySazory & azmeruq
By LeaySazory & azmeruq
1.2. Aplicaciones de los sistemas de bases de
datos.
By LeaySazory & azmeruq
Banca líneas aéreas bases de datos
By LeaySazory & azmeruq
universidades telecomunicaciones
transacciones
de tarjetas
By LeaySazory & azmeruq
Finanzas ventas
compra venta
en línea
By LeaySazory & azmeruq
comercio
en línea
producción
web
By LeaySazory & azmeruq
artículos
recursos
humanos
prestaciones
sociales
By LeaySazory & azmeruq
En los primeros días, muy pocas personas
interactúan directamente con los sistemas
de bases de datos, aunque sin darse cuenta
interactúan directamente con bases de
datos con informes impresos como los
extractos de las tarjetas
interfaces telefónicas con las computadoras
(sistemas de respuesta vocal interactiva)
también permitieron a los usuarios tratar
directamente con las bases de datos la
persona que llamaba podía marcar un
número y pulsar las teclas del teléfono para
introducir información
By LeaySazory & azmeruq
1.3. Propósito de los sistemas de bases de datos
By LeaySazory & azmeruq
Los sistemas de bases de datos surgieron en
respuesta a los primeros métodos de gestión
informatizada de los datos comerciales, entre
otros datos, guarda información sobre todos los
clientes y todas las cuentas de ahorro.
❖ Efectuar cargos o abonos en las
cuentas.
❖ Añadir cuentas nuevas.
❖ Calcular el saldo de las cuentas.
❖ Generar los extractos mensuales.
By LeaySazory & azmeruq
Redundancia e inconsistencia de los datos:
La información que esté duplicada en varios
lugares (archivos). Esta conduce a costes de
almacenamiento y de acceso más elevados,
además puede que los mismos datos no
coincidan.
Dificultad en el acceso a los datos:
Los entornos de procesamiento de archivos
convencionales no permiten recuperar los datos
necesarios de una forma práctica y eficiente.
By LeaySazory & azmeruq
Aislamiento de datos:
Los datos están dispersos en varios archivos,
y los archivos pueden estar en diferentes
formatos.
Problemas de integridad:
Los datos almacenados en la base de datos
deben satisfacer ciertos tipos de restricciones
de consistencia.
By LeaySazory & azmeruq
Problemas de atomicidad:
Es crucial asegurar que, si se produce algún
fallo, los datos se restauran al estado
consistente que existía antes del fallo.
Anomalías en el acceso concurrente:
Para aumentar el rendimiento y obtener una
respuesta más rápida, muchos sistemas
permiten que varios usuarios actualicen los
datos simultáneamente.
https://es.wikipedia.org/wiki/Red_de_computadoras
By LeaySazory & azmeruq
Problemas de seguridad:
No todos en un sistema de base de datos deben poder acceder a todos los
datos.
By LeaySazory & azmeruq
1.4. Bases de datos Relacional
Una base de datos relacional es un tipo de
base de datos que almacena y proporciona
acceso a puntos de datos relacionados entre
sí. Las bases de datos relacionales se basan
en el modelo relacional.
By LeaySazory & azmeruq
Funciones principales del administrador
de base de datos
● Asegurar el buen funcionamiento de las
BD’s
● Retención de información de la BD
● Evitar pérdida de datos
● Solucionar incidencias
● Garantizar la seguridad de los datos
By LeaySazory & azmeruq
Responsabilidades del sistema gestor de
base de datos
● Instalar, configurar y gestionar BD’s
● Dar soporte al equipo de desarrollo,
seguridad informática y redes
● Definir el esquema del diccionario de datos
● Especificar restricciones de integridad para
asegurar los datos
● Garantizar la alta disponibilidad de la BD
By LeaySazory & azmeruq
Operaciones sobre los archivos en una BD
CRUD
● Agregar archivos nuevos en la BD
● Insertar datos
● Eliminar datos
● Actualizar datos
● Obtener datos de archivos existentes de la
BD
By LeaySazory & azmeruq
By LeaySazory & azmeruq
Sistema de información
Es un conjunto de elementos orientados al
tratamiento y administración de datos e
información, organizados y listos para su
posterior uso, generados para cubrir una
necesidad.
By LeaySazory & azmeruq
2. Modelo Relacional
By LeaySazory & azmeruq
2.1. La estructura de bases de datos relacionales
Una base de datos relacional consiste en un conjunto de tablas, a las cuales
se les asigna un nombre exclusivo. Cada fila de la tabla representa una
relación entre un conjunto de valores.
By LeaySazory & azmeruq
2.2.El modelo de entidad-relación
Fue introducido por Peter Chen en 1976. El
modelo entidad-relación está formado por
un conjunto de conceptos que permiten
describir la realidad mediante un conjunto
de representaciones gráficas y lingüísticas.
By LeaySazory & azmeruq
By LeaySazory & azmeruq
Entidad:
Cualquier tipo de objeto o concepto sobre el que se recoge información: cosa,
persona, concepto abstracto o suceso. Por ejemplo: coches, casas, empleados,
clientes, empresas, oficios, diseños de productos, conciertos, excursiones, etc.
Hay 2 tipos de entidades: fuertes y débiles
By LeaySazory & azmeruq
2.3.Diagramas entidad relación
https://jamboard.google.com/d/1E4xnQZgpYqGJEALTT3sMgSgqzlXruCgxycE393VLA60/edit?usp=sharing
By LeaySazory & azmeruq
❖ Rectángulos, que representan conjuntos de
entidades.
❖ Elipses, que representan atributos.
❖ Rombos, que representan conjuntos de relaciones.
By LeaySazory & azmeruq
❖ Líneas, que unen los atributos con los
conjuntos de entidades y los conjuntos de
entidades con los conjuntos de relaciones.
❖ Elipses dobles, que representan atributos
multivaluados.
❖ Elipses discontinuas, que denotan atributos
derivados.
By LeaySazory & azmeruq
❖ Líneas dobles, que indican participación total
de una entidad en un conjunto de relaciones.
❖ Rectángulos dobles que representan conjuntos
de entidades débiles.
By LeaySazory & azmeruq
By LeaySazory & azmeruq
By LeaySazory & azmeruq
By LeaySazory & azmeruq
2.4.Aspectos de diseño entidad relación
Los conceptos de conjunto de entidades y de
conjunto de relaciones no son precisos, y es
posible definir el conjunto de entidades y las
relaciones entre ellas de diferentes formas.
By LeaySazory & azmeruq
By LeaySazory & azmeruq
By LeaySazory & azmeruq
YAEL MÁRQUEZ
ROCÍO MÁRQUEZ - azmeruq
By LeaySazory & azmeruq
https://app.diagrams.net/
By LeaySazory & azmeruq
3. Lenguaje estructurado de consulta (SQL)
3.1. Características del lenguaje SQL. Utilidad del
lenguaje.
El lenguaje SQL, o lenguaje de consulta
estructurado, es hoy el más utilizado en
cualquier ámbito en el que se trabaje con
bases de datos. Se trata de un lenguaje que
permite acceder, modificar o eliminar la
información
By LeaySazory & azmeruq
Las distintas aplicaciones del lenguaje SQL
El internet ha llevado a las bases de datos a otro
nivel. Son la clave del funcionamiento de las
páginas web, por lo que SQL tiene una especial
importancia en el ámbito digital.
Una base de datos correctamente
estructurada es una herramienta
enormemente útil con un rendimiento muy
alto, Cualquier persona que trabaje con
análisis de datos o tratamiento de
información
By LeaySazory & azmeruq
3.2.Comandos SQL .Grupos de comando
By LeaySazory & azmeruq
❖ Comandos de definición de datos
(DDL = Data Definition Language)
❖ Comandos de manipulación de datos
(DML = Data Manipulation
Language),que permiten generar
consultas para ordenar, filtrar y extraer
datos.
❖ Comandos de control y seguridad de
datos, que gobiernan los privilegios de
los usuarios.
By LeaySazory & azmeruq
Operadores Lógicos
Operadores de
comparación
By LeaySazory & azmeruq
Funciones de
agregación
By LeaySazory & azmeruq
http://dbadixit.com/delete-y-truncate-table/#:~:text=A%20diferencia%20del%20comando%20DELETE,para%20que%20se%20puedan%20reocupar.
By LeaySazory & azmeruq
http://sql.11sql.com/sql-unique.htm
https://www.w3schools.com/sql/sql_unique.asp
UNIQUE
Se utiliza para garantizar
que no se inserten
valores duplicados en
una columna específica
By LeaySazory & azmeruq
CREATE DB
https://www.w3schools.com/sql/sql_create_db.asp
CREATE TABLE
https://www.w3schools.com/sql/sql_create_table.asp
DROP TABLE
https://www.w3schools.com/sql/sql_drop_table.asp
ALTER TABLE
https://www.w3schools.com/sql/sql_alter.asp
EJERCICIO
By LeaySazory & azmeruq
By LeaySazory & azmeruq
SELECT
https://www.w3schools.com/sql/sql_select.asp
INSERT
https://www.w3schools.com/sql/sql_insert.asp
UPDATE
https://www.w3schools.com/sql/sql_update.asp
DELETE
https://www.w3schools.com/sql/sql_delete.asp
EJERCICIO
SELECT * FROM Customers
WHERE City="Berlin";
By LeaySazory & azmeruq
By LeaySazory & azmeruq
FROM
https://www.w3schools.com/sql/sql_select.asp
WHERE
https://www.w3schools.com/sql/sql_where.asp
GROUP BY
https://www.w3schools.com/sql/sql_groupby.asp
HAVING
https://www.w3schools.com/sql/sql_having.asp
ORDER BY
https://www.w3schools.com/sql/sql_orderby.asp
EJERCICIO
By LeaySazory & azmeruq
By LeaySazory & azmeruq
AND, OR, NOT
https://www.w3schools.com/sql/sql_and_or.asp
EJERCICIO
By LeaySazory & azmeruq
By LeaySazory & azmeruq
OPERATOR’S
https://www.w3schools.com/sql/sql_operators.asp
LIKE
https://www.w3schools.com/sql/sql_like.asp
IN
https://www.w3schools.com/sql/sql_in.asp
BETWEEN
https://www.w3schools.com/sql/sql_between.asp
EJERCICIO
By LeaySazory & azmeruq
By LeaySazory & azmeruq
COUNT / AVG / SUM
https://www.w3schools.com/sql/sql_count_avg_sum.asp
MAX / MIN
https://www.w3schools.com/sql/sql_min_max.asp
By LeaySazory & azmeruq
By LeaySazory & azmeruq
3.3.Definición de datos
By LeaySazory & azmeruq
❖ El esquema de cada relación.
❖ Las restricciones de integridad.
❖ El dominio de valores asociado a cada
atributo.
❖ El conjunto de índices que se deben mantener
para cada relación.
❖ La información de seguridad y de autorización
de cada relación.
❖ La estructura de almacenamiento físico de cada
relación en el disco.
El conjunto de relaciones de cada base de datos debe especificarse en el sistema en
términos de un lenguaje de definición de datos (LDD).
El LDD de SQL no sólo permite la especificación de un conjunto de relaciones, sino
también de la información relativa a esas relaciones, incluyendo:
By LeaySazory & azmeruq
Tipos básicos de dominios:
❖ char(n): Una cadena de caracteres de longitud fija, con una longitud especificada
por el usuario.También se puede utilizar la palabra completa character
❖ varchar(n): Una cadena de caracteres de longitud variable con una longitud
máxima n especificada por el usuario. La forma completa, character varying, es
equivalente.
❖ int: Un entero (un subconjunto finito de los enteros dependiente de la máquina). La
palabra completa, integer, es equivalente.
By LeaySazory & azmeruq
❖ smallint: Un entero pequeño (un subconjunto dependiente de la máquina del
tipo de dominio entero).
❖ numeric(p, d): Un número de coma fija, cuya precisión la especifica el usuario.
El número está formado por p dígitos (más el signo), y de esos p dígitos, d
pertenecen a la parte decimal. Así, numeric(3,1) permite que el número 44.5 se
almacene exactamente, pero ni 444.5 ni 0.32 se pueden almacenar
exactamente en un campo de este tipo.
❖ real: Números de coma flotante y números de coma flotante de doble
precisión, con precisión dependiente de la máquina.
❖ float(n): Un número de coma flotante cuya precisión es, al menos, de n dígito.
❖
❖ STACK OVERFLOW
By LeaySazory & azmeruq
By LeaySazory & azmeruq
3.4.Estructura básica de las consultas SQL
Las bases de datos relacionales están
formadas por un conjunto de relaciones, a
cada una de las cuales se le asigna un nombre
único, SQL permite el uso de valores nulos
para indicar que el valor es desconocido o no
existe.
By LeaySazory & azmeruq
SQL consta de tres cláusulas:
La cláusula select se corresponde
con la operación proyección del
álgebra relacional.
La cláusula from se corresponde
con la operación producto
cartesiano del álgebra relacional.
La cláusula where se corresponde
con el predicado selección del
álgebra relacional.
By LeaySazory & azmeruq
https://www.w3schools.com/sql/trysql.asp?filename=trysql_select_all
SELECT * FROM Customers WHERE Country="Mexico";
By LeaySazory & azmeruq
4. Almacén de datos
By LeaySazory & azmeruq
4.1. Esquemas de almacenes de datos
Data warehouse es un sistema que agrega y
combina información de diferentes fuentes en
un almacén de datos único y centralizado;
consistente para respaldar el análisis
empresarial, la minería de datos, inteligencia
artificial y Machine Learning.
By LeaySazory & azmeruq
Esquema estrella:
Se conoce como esquema estelar ya
que su estructura se asemeja a una
estrella, es el tipo más simple de
esquema de Data Warehouse.
Características del esquema:
● Cada dimensión en un esquema de
estrella se representa con la única tabla
de una dimensión.
● La tabla de dimensiones debe contener
el conjunto de atributos.
● La tabla de dimensiones se une a la
tabla de hechos utilizando una clave
foránea.
● Las tablas de dimensiones no están
unidas entre sí.
● La tabla de hechos contendría clave y
medida.
By LeaySazory & azmeruq
Esquema copo de nieve:
Un esquema de copo de nieve es una extensión de un esquema de estrella y agrega
dimensiones adicionales.
Las tablas de dimensiones están normalizadas, lo que divide los datos en tablas
adicionales. En el siguiente ejemplo, País se normaliza aún más en una tabla individual.
YAEL MÁRQUEZ
ROCÍO MÁRQUEZ - azmeruq
By LeaySazory & azmeruq
❖ El principal beneficio del esquema de copo de
nieve es que utiliza un espacio en disco más
pequeño.
❖ Debido a múltiples tablas, el rendimiento de la
consulta se reduce.
❖ El principal desafío que enfrentará al usar el
esquema de copo de nieve es que necesita
realizar más esfuerzos de mantenimiento debido a
que hay más tablas de búsquedas.
By LeaySazory & azmeruq
Esquema Galaxy:
Un esquema Galaxy contiene dos tablas de
hechos que comparten tablas de dimensiones.
También se llama Fact Constellation Schema. El
esquema se ve como una colección de estrellas,
de ahí el nombre Galaxy Schema.
By LeaySazory & azmeruq
4.2. Diseño de almacenes de bases de datos
práctica
Dentro de la metodología de diseño de un
almacén de datos se encuentran tres etapas
diferenciadas que deben ejecutarse en orden
secuencial para la obtención del modelo
multidimensional deseado.
YAEL MÁRQUEZ
ROCÍO MÁRQUEZ - azmeruq
By LeaySazory & azmeruq
Diseño conceptual:
Un esquema multidimensional representa una
actividad que es objeto de análisis (hecho) y las
dimensiones que caracterizan la actividad
(dimensiones). La información relevante sobre el
hecho se representa por un conjunto de
indicadores (medidas o atributos de hecho).
YAEL MÁRQUEZ
ROCÍO MÁRQUEZ - azmeruq
By LeaySazory & azmeruq
Diseño lógico:
Una vez definido el modelo multidimensional con
el esquema que se haya seleccionado, se
transformará el diagrama de clases UML a un
diagrama relacional sobre el que trabajaremos y
hemos comentado anteriormente, ROLAP.
YAEL MÁRQUEZ
ROCÍO MÁRQUEZ - azmeruq
By LeaySazory & azmeruq
Diseño físico:
Trata de buscar una optimización de
los tiempos de consulta sobre las
tablas de hechos y dimensiones. En la
tabla de hechos se van a realizar
acciones de creación de índices sobre
los identificadores de las dimensiones.
El orden de las columnas al crear el
índice es muy importante.
https://es.wikipedia.org/wiki/Lengua
je_unificado_de_modelado
By LeaySazory & azmeruq
5. Software de diseño de base de datos
YAEL MÁRQUEZ
ROCÍO MÁRQUEZ - azmeruq
By LeaySazory & azmeruq
MySQL Workbench
Un editor visual de base de datos MySQL que cuenta con el respaldo oficial de MySQL. Sin duda la
herramienta se caracteriza por su editor de diagramas; imagen o PDF o bien generar un script SQL
CREATE o ALTER. MySQL y para Windows, Mac OS X y Linux.
By LeaySazory & azmeruq
Crear y manejar bases de datos de forma local, es la herramienta que estás buscando.
Con la utilidad podrás crear, gestionar y eliminar bases de datos, tablas y campos.
phpMyAdmin
Podrás importar en CSV y SQL y
exportar en CSV, SQL, XML, PDF,
ISO / IEC 26300, Word y Excel
entre otros. phpMyAdmin es una
herramienta de software libre
disponible en español y
desarrollada bajo entorno PHP
YAEL MÁRQUEZ
ROCÍO MÁRQUEZ - azmeruq
By LeaySazory & azmeruq
6. Funciones en SQL
El lenguaje SQL tiene funciones incorporadas
para hacer cálculos sobre los datos. Las
funciones se pueden dividir en dos grupos
(existen muchas más, que dependen del sistema
de bases de datos que se utilice).
YAEL MÁRQUEZ
ROCÍO MÁRQUEZ - azmeruq
By LeaySazory & azmeruq
● AVG() - La media de los
valores
● COUNT() - El número de
filas
By LeaySazory & azmeruq
● SUM() - La suma de los
valores
https://www.w3schools.com/sql/sql_c
ount_avg_sum.asp
EJERCICIO
YAEL MÁRQUEZ
ROCÍO MÁRQUEZ - azmeruq
By LeaySazory & azmeruq
● MAX() - El valor más
grande
● MIN() - El valor más
pequeño
https://www.w3schools.com/sql/sql_m
in_max.asp
EJERCICIO
By LeaySazory & azmeruq
● GROUP BY - Es una sentencia
que va muy ligada a las funciones
agregadas
https://www.w3schools.com/sql/sql_gr
oupby.asp
EJERCICIO
By LeaySazory & azmeruq
● Funciones escalares SQL,
devuelve un sólo valor basándose
en el valor de entrada.
https://www.w3schools.co
m/sql/sql_ref_mysql.asp
By LeaySazory & azmeruq
● UCASE() Convierte un campo
a mayúsculas
● LCASE() - Convierte un campo a
minúsculas
https://www.w3schools.com/sql/func_
sqlserver_upper.asp
EJERCICIO
By LeaySazory & azmeruq
● LEN() - Devuelve la longitud
de un campo de texto
● NOW() - Devuelve la hora y
fecha actuales del sistema
● FORMAT() - Da formato a un
formato para mostrarlo
By LeaySazory & azmeruq
● MID() - Extrae caracteres de un
campo de texto
MID()
https://www.w3schools.com/sq
l/func_mysql_mid.asp
LEN()
https://www.w3schools.com/sq
l/func_sqlserver_len.asp
NOW()
https://www.w3schools.com/sq
l/func_mysql_now.asp
FORMAT()
https://www.w3schools.com/sq
l/func_sqlserver_format.asp
By LeaySazory & azmeruq
By LeaySazory & azmeruq
https://www.w3schools.com/sql/sql_primarykey.asp
By LeaySazory & azmeruq
https://www.w3schools.com/sql/sql_foreignkey.asp
By LeaySazory & azmeruq
By LeaySazory & azmeruq
https://www.w3schools.com/sql/sql_insert.asp
Agregar especificando valores:
Agregar a todos los valores de la tabla:
By LeaySazory & azmeruq
Agregar varios valores a varias filas:
By LeaySazory & azmeruq
By LeaySazory & azmeruq
7. Triggers en SQL
Un trigger o disparador es un script que
se usa en lenguaje de programación
SQL, en especial en bases de datos
como MySQL o PostgreSQL.
Consiste en una serie de reglas
predefinidas que se asocian a una tabla.
By LeaySazory & azmeruq
¿Para qué sirve?
La principal función de los trigger es contribuir a mejorar la
gestión de la base de datos. Gracias a ellos muchas operaciones
se pueden realizar de forma automática.
By LeaySazory & azmeruq
¿Cuándo se puede usar un Trigger?
Los trigger se puede ejecutar cuando el
usuario realiza alguna acción relacionada con
añadir, actualizar o eliminar información de
una tabla. Es decir, al usar los comandos
INSERT, UPDATE o DELETE.
By LeaySazory & azmeruq
https://www.w3resource.com/mysql/mysql-triggers.php
https://www.geeksforgeeks.org/sql-trigger-student-database/
By LeaySazory & azmeruq
8. Consultas en SQL
8.1. Consultas de Acción:
Las consultas de acción son aquellas que no
devuelven ningún registro, son las encargadas de
acciones como añadir, borrar y modificar registros.
Tanto las sentencias de actualización como las de
borrado la desencadenan.
By LeaySazory & azmeruq
● La cláusula select se
corresponde con la operación
proyección del álgebra
relacional.
● La cláusula from se
corresponde con la operación
producto cartesiano del
álgebra relacional.
● La cláusula where se
corresponde con el predicado
selección del álgebra
relacional. By LeaySazory & azmeruq
By LeaySazory & azmeruq
8.2.Creación de tablas
Las tablas se utilizan para almacenar datos en la base de datos. Las tablas tienen
nombres únicos dentro de una base de datos y un esquema, Cada tabla contiene
una o más columnas y cada columna tiene un tipo de datos asociado.
By LeaySazory & azmeruq
8.3.Actualización:
Update es la instrucción del lenguaje SQL que nos sirve para modificar los
registros de una tabla. Como para el caso de Delete, necesitamos
especificar por medio de Where.
https://www.w3schools.com/mysql/mysql_update.asp
By LeaySazory & azmeruq
8.4.Eliminación:
La instrucción DELETE permite eliminar uno o
múltiples registros. Incluso todos los registros
de una tabla, dejándola vacía. Su sintaxis es
general, define las condiciones que deben
cumplir los registros que se desean eliminar.
By LeaySazory & azmeruq
8.5. Inserción:
INSERT es una sentencia SQL que añade datos a una tabla. La sentencia
INSERT tiene el formato siguiente, nom_tabla es el nombre de la tabla o vista
en la que se desea insertar datos y valor1, valor2 (etc.).
By LeaySazory & azmeruq
SELECT
https://www.w3schools.com/sql/sql_select.asp
INSERT
https://www.w3schools.com/sql/sql_insert.asp
UPDATE
https://www.w3schools.com/sql/sql_update.asp
DELETE
https://www.w3schools.com/sql/sql_delete.asp
YAEL MÁRQUEZ
ROCÍO MÁRQUEZ - azmeruq
By LeaySazory & azmeruq
8.6. Consultas de selección:
Cuando quiera seleccionar datos específicos de
uno o varios orígenes, use una consulta de
selección. Una consulta de selección le ayuda a
recuperar únicamente los datos que le interesen
By LeaySazory & azmeruq
8.7. Consulta Multitabla
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
By LeaySazory & azmeruq
https://www.w3schools.com/mySQl/sql_ref_join.asp
https://www.w3schools.com/mySQl/mysql_join_inner.asp
https://www.w3schools.com/mySQl/mysql_join_left.asp
https://www.w3schools.com/mySQl/mysql_join_right.asp
By LeaySazory & azmeruq
Composiciones cruzadas (Producto cartesiano)
El producto cartesiano de dos conjuntos, es una operación que consiste en
obtener otro conjunto cuyos elementos son todas las parejas que pueden
formarse entre los dos conjuntos. Por ejemplo.
By LeaySazory & azmeruq
By LeaySazory & azmeruq
By LeaySazory & azmeruq
By LeaySazory & azmeruq
Composiciones internas (Intersección)
La intersección de dos conjuntos es una operación que resulta en otro
conjunto que contiene sólo los elementos comunes que existen en ambos
conjuntos.
By LeaySazory & azmeruq
By LeaySazory & azmeruq
By LeaySazory & azmeruq
8.8. Consultas de Agrupación:
La cláusula GROUP BY te permite organizar las filas de una consulta en
grupos. Los grupos están determinados por las columnas que se especifican
en la cláusula GROUP BY.
En esta consulta, la cláusula GROUP BY regresa un grupo para cada combinación de
los valores en las columnas enumeradas en la cláusula GROUP BY.
By LeaySazory & azmeruq
FROM
https://www.w3schools.com/sql/sql_select.asp
WHERE
https://www.w3schools.com/sql/sql_where.asp
GROUP BY
https://www.w3schools.com/sql/sql_groupby.asp
HAVING
https://www.w3schools.com/sql/sql_having.asp
ORDER BY
https://www.w3schools.com/sql/sql_orderby.asp
EJERCICIO
By LeaySazory & azmeruq
https://www.w3school-learn.com/20
18/01/sql-subquery.html
https://www.aulaclic.es/sql/t_5_1.htm
https://www.srcodigofuente.es/subc
onsultas-en-sql
ALIAS
By LeaySazory & azmeruq
1
2
3
4
5
6
7
Devuelve todos los productos del fabricante Lenovo.
By LeaySazory & azmeruq
SELECT * FROM Producto WHERE codigo_fabricante = (
PRODUCTO FABRICANTE
codigo
nombre
precio
codigo_fabricante
codigo nombre
SELECT codigo FROM fabricante WHERE nombre = 'Lenovo')
By LeaySazory & azmeruq

Más contenido relacionado

Similar a Base de datos

Taller 1
Taller 1Taller 1
Taller 1fredy
 
Herramienta de Almacén de Datos e Inteligencia de Reportes
Herramienta de Almacén de Datos e Inteligencia de ReportesHerramienta de Almacén de Datos e Inteligencia de Reportes
Herramienta de Almacén de Datos e Inteligencia de ReportesNicolás Pace
 
S M D B E Q U I P O11
S M D B  E Q U I P O11S M D B  E Q U I P O11
S M D B E Q U I P O11antori
 
Administrador de Dase de Datos
Administrador de Dase de DatosAdministrador de Dase de Datos
Administrador de Dase de DatosPablo Juarez
 
Bases de datos
Bases de datosBases de datos
Bases de datosAlfonso
 
Bd eq. #3 actividad extra comparacion oracle y mysql
Bd eq. #3 actividad extra comparacion oracle y mysqlBd eq. #3 actividad extra comparacion oracle y mysql
Bd eq. #3 actividad extra comparacion oracle y mysqlKARY
 
Bd eq. #3 actividad 2 unidad 2 comparacion oracle y mysql
Bd eq. #3 actividad 2 unidad 2 comparacion oracle y mysqlBd eq. #3 actividad 2 unidad 2 comparacion oracle y mysql
Bd eq. #3 actividad 2 unidad 2 comparacion oracle y mysqlKARY
 
Bd eq. #3 actividad 2 unidad 2 comparacion oracle y mysql
Bd eq. #3 actividad 2 unidad 2 comparacion oracle y mysqlBd eq. #3 actividad 2 unidad 2 comparacion oracle y mysql
Bd eq. #3 actividad 2 unidad 2 comparacion oracle y mysqlKARY
 
Bd eq. #3 actividad 2 unidad 2 oracle y mysql
Bd eq. #3 actividad 2 unidad 2 oracle y mysqlBd eq. #3 actividad 2 unidad 2 oracle y mysql
Bd eq. #3 actividad 2 unidad 2 oracle y mysqlKARY
 
Material de lectura administración de base de datos
Material de lectura administración de base de datosMaterial de lectura administración de base de datos
Material de lectura administración de base de datosArturo Coronado
 
¿Qué es una base de datos?
¿Qué es una base de datos?¿Qué es una base de datos?
¿Qué es una base de datos?SENA
 
Bases de Datos I_primer cuatrimestre.pptx
Bases de Datos I_primer cuatrimestre.pptxBases de Datos I_primer cuatrimestre.pptx
Bases de Datos I_primer cuatrimestre.pptxalecastillomsksks
 
Base de datos
Base de datosBase de datos
Base de datosjota120
 
Base de datos (conceptos básicos )
Base de datos (conceptos básicos )Base de datos (conceptos básicos )
Base de datos (conceptos básicos )juandavid1118
 

Similar a Base de datos (20)

Taller 1
Taller 1Taller 1
Taller 1
 
Herramienta de Almacén de Datos e Inteligencia de Reportes
Herramienta de Almacén de Datos e Inteligencia de ReportesHerramienta de Almacén de Datos e Inteligencia de Reportes
Herramienta de Almacén de Datos e Inteligencia de Reportes
 
S M D B E Q U I P O11
S M D B  E Q U I P O11S M D B  E Q U I P O11
S M D B E Q U I P O11
 
Administrador de Dase de Datos
Administrador de Dase de DatosAdministrador de Dase de Datos
Administrador de Dase de Datos
 
Bases de datos
Bases de datosBases de datos
Bases de datos
 
Infome sgbd
Infome sgbdInfome sgbd
Infome sgbd
 
Bd eq. #3 actividad extra comparacion oracle y mysql
Bd eq. #3 actividad extra comparacion oracle y mysqlBd eq. #3 actividad extra comparacion oracle y mysql
Bd eq. #3 actividad extra comparacion oracle y mysql
 
Bd eq. #3 actividad 2 unidad 2 comparacion oracle y mysql
Bd eq. #3 actividad 2 unidad 2 comparacion oracle y mysqlBd eq. #3 actividad 2 unidad 2 comparacion oracle y mysql
Bd eq. #3 actividad 2 unidad 2 comparacion oracle y mysql
 
Bd eq. #3 actividad 2 unidad 2 comparacion oracle y mysql
Bd eq. #3 actividad 2 unidad 2 comparacion oracle y mysqlBd eq. #3 actividad 2 unidad 2 comparacion oracle y mysql
Bd eq. #3 actividad 2 unidad 2 comparacion oracle y mysql
 
Bd eq. #3 actividad 2 unidad 2 oracle y mysql
Bd eq. #3 actividad 2 unidad 2 oracle y mysqlBd eq. #3 actividad 2 unidad 2 oracle y mysql
Bd eq. #3 actividad 2 unidad 2 oracle y mysql
 
Material de lectura administración de base de datos
Material de lectura administración de base de datosMaterial de lectura administración de base de datos
Material de lectura administración de base de datos
 
Base de datos
Base de datosBase de datos
Base de datos
 
B Ase De Datos3
B Ase De Datos3B Ase De Datos3
B Ase De Datos3
 
Especialista Web J4
Especialista Web   J4Especialista Web   J4
Especialista Web J4
 
¿Qué es una base de datos?
¿Qué es una base de datos?¿Qué es una base de datos?
¿Qué es una base de datos?
 
Bases de Datos I_primer cuatrimestre.pptx
Bases de Datos I_primer cuatrimestre.pptxBases de Datos I_primer cuatrimestre.pptx
Bases de Datos I_primer cuatrimestre.pptx
 
Base de datos
Base de datosBase de datos
Base de datos
 
Base de datos (conceptos básicos )
Base de datos (conceptos básicos )Base de datos (conceptos básicos )
Base de datos (conceptos básicos )
 
Funciones del dba
Funciones del dbaFunciones del dba
Funciones del dba
 
Base de datos
Base de datosBase de datos
Base de datos
 

Más de Az

Introducción a python.pdf
Introducción a python.pdfIntroducción a python.pdf
Introducción a python.pdfAz
 
Desarrollo de páginas WEB
Desarrollo de páginas WEBDesarrollo de páginas WEB
Desarrollo de páginas WEBAz
 
Pensamiento Computacional.pdf
Pensamiento Computacional.pdfPensamiento Computacional.pdf
Pensamiento Computacional.pdfAz
 
Libreto literatura (carta de traición) Epo 74
Libreto literatura (carta de traición) Epo 74Libreto literatura (carta de traición) Epo 74
Libreto literatura (carta de traición) Epo 74Az
 
Situación socioeconómica y política según Enrique Krauze (Adolfo Ruiz, Adolfo...
Situación socioeconómica y política según Enrique Krauze (Adolfo Ruiz, Adolfo...Situación socioeconómica y política según Enrique Krauze (Adolfo Ruiz, Adolfo...
Situación socioeconómica y política según Enrique Krauze (Adolfo Ruiz, Adolfo...Az
 
Situación socio-económica y política de México por presidente
Situación socio-económica y política de México por presidenteSituación socio-económica y política de México por presidente
Situación socio-económica y política de México por presidenteAz
 
Modelos económicos de México
Modelos económicos de MéxicoModelos económicos de México
Modelos económicos de MéxicoAz
 
Manual de computación
Manual de computaciónManual de computación
Manual de computaciónAz
 
Ensamble de una computadora
Ensamble de una computadoraEnsamble de una computadora
Ensamble de una computadoraAz
 
Partes de una computadora
Partes de una computadoraPartes de una computadora
Partes de una computadoraAz
 
La basura que comemos
La basura que comemosLa basura que comemos
La basura que comemosAz
 
Clase muestra español
Clase muestra españolClase muestra español
Clase muestra españolAz
 
Valores no compartidos, compartidos, económicos, estéticos, morales y el pape...
Valores no compartidos, compartidos, económicos, estéticos, morales y el pape...Valores no compartidos, compartidos, económicos, estéticos, morales y el pape...
Valores no compartidos, compartidos, económicos, estéticos, morales y el pape...Az
 
Cuidado del entorno 2/2
Cuidado del entorno 2/2Cuidado del entorno 2/2
Cuidado del entorno 2/2Az
 
Cuidado del entorno 1/2
Cuidado del entorno 1/2Cuidado del entorno 1/2
Cuidado del entorno 1/2Az
 
Macromedia Flash (conceptos básicos)
Macromedia Flash (conceptos básicos)Macromedia Flash (conceptos básicos)
Macromedia Flash (conceptos básicos)Az
 
Biología general
Biología generalBiología general
Biología generalAz
 
Album biologia
Album biologiaAlbum biologia
Album biologiaAz
 
Rúbrica 01
Rúbrica 01Rúbrica 01
Rúbrica 01Az
 

Más de Az (19)

Introducción a python.pdf
Introducción a python.pdfIntroducción a python.pdf
Introducción a python.pdf
 
Desarrollo de páginas WEB
Desarrollo de páginas WEBDesarrollo de páginas WEB
Desarrollo de páginas WEB
 
Pensamiento Computacional.pdf
Pensamiento Computacional.pdfPensamiento Computacional.pdf
Pensamiento Computacional.pdf
 
Libreto literatura (carta de traición) Epo 74
Libreto literatura (carta de traición) Epo 74Libreto literatura (carta de traición) Epo 74
Libreto literatura (carta de traición) Epo 74
 
Situación socioeconómica y política según Enrique Krauze (Adolfo Ruiz, Adolfo...
Situación socioeconómica y política según Enrique Krauze (Adolfo Ruiz, Adolfo...Situación socioeconómica y política según Enrique Krauze (Adolfo Ruiz, Adolfo...
Situación socioeconómica y política según Enrique Krauze (Adolfo Ruiz, Adolfo...
 
Situación socio-económica y política de México por presidente
Situación socio-económica y política de México por presidenteSituación socio-económica y política de México por presidente
Situación socio-económica y política de México por presidente
 
Modelos económicos de México
Modelos económicos de MéxicoModelos económicos de México
Modelos económicos de México
 
Manual de computación
Manual de computaciónManual de computación
Manual de computación
 
Ensamble de una computadora
Ensamble de una computadoraEnsamble de una computadora
Ensamble de una computadora
 
Partes de una computadora
Partes de una computadoraPartes de una computadora
Partes de una computadora
 
La basura que comemos
La basura que comemosLa basura que comemos
La basura que comemos
 
Clase muestra español
Clase muestra españolClase muestra español
Clase muestra español
 
Valores no compartidos, compartidos, económicos, estéticos, morales y el pape...
Valores no compartidos, compartidos, económicos, estéticos, morales y el pape...Valores no compartidos, compartidos, económicos, estéticos, morales y el pape...
Valores no compartidos, compartidos, económicos, estéticos, morales y el pape...
 
Cuidado del entorno 2/2
Cuidado del entorno 2/2Cuidado del entorno 2/2
Cuidado del entorno 2/2
 
Cuidado del entorno 1/2
Cuidado del entorno 1/2Cuidado del entorno 1/2
Cuidado del entorno 1/2
 
Macromedia Flash (conceptos básicos)
Macromedia Flash (conceptos básicos)Macromedia Flash (conceptos básicos)
Macromedia Flash (conceptos básicos)
 
Biología general
Biología generalBiología general
Biología general
 
Album biologia
Album biologiaAlbum biologia
Album biologia
 
Rúbrica 01
Rúbrica 01Rúbrica 01
Rúbrica 01
 

Último

Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200Opentix
 
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...ITeC Instituto Tecnología Construcción
 
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLOPARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLOSelenaCoronadoHuaman
 
Segmentacion Segmantica_Modelos UNET and DEEPLABV3
Segmentacion Segmantica_Modelos UNET and DEEPLABV3Segmentacion Segmantica_Modelos UNET and DEEPLABV3
Segmentacion Segmantica_Modelos UNET and DEEPLABV3AlexysCaytanoMelndez1
 
Introducción a Funciones LENGUAJE DART FLUTTER
Introducción a Funciones LENGUAJE DART FLUTTERIntroducción a Funciones LENGUAJE DART FLUTTER
Introducción a Funciones LENGUAJE DART FLUTTEREMMAFLORESCARMONA
 
Manual de Usuario APPs_AppInventor-2023.pdf
Manual de Usuario APPs_AppInventor-2023.pdfManual de Usuario APPs_AppInventor-2023.pdf
Manual de Usuario APPs_AppInventor-2023.pdfmasogeis
 
Unidad_3_T1_AutomatasFinitos presentacion
Unidad_3_T1_AutomatasFinitos presentacionUnidad_3_T1_AutomatasFinitos presentacion
Unidad_3_T1_AutomatasFinitos presentacionarmando_cardenas
 

Último (7)

Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200Caso de éxito de Hervian con el ERP Sage 200
Caso de éxito de Hervian con el ERP Sage 200
 
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
BREEAM ES Urbanismo como herramienta para un planeamiento sostenible - Miguel...
 
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLOPARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
PARTES DEL TECLADO Y SUS FUNCIONES - EJEMPLO
 
Segmentacion Segmantica_Modelos UNET and DEEPLABV3
Segmentacion Segmantica_Modelos UNET and DEEPLABV3Segmentacion Segmantica_Modelos UNET and DEEPLABV3
Segmentacion Segmantica_Modelos UNET and DEEPLABV3
 
Introducción a Funciones LENGUAJE DART FLUTTER
Introducción a Funciones LENGUAJE DART FLUTTERIntroducción a Funciones LENGUAJE DART FLUTTER
Introducción a Funciones LENGUAJE DART FLUTTER
 
Manual de Usuario APPs_AppInventor-2023.pdf
Manual de Usuario APPs_AppInventor-2023.pdfManual de Usuario APPs_AppInventor-2023.pdf
Manual de Usuario APPs_AppInventor-2023.pdf
 
Unidad_3_T1_AutomatasFinitos presentacion
Unidad_3_T1_AutomatasFinitos presentacionUnidad_3_T1_AutomatasFinitos presentacion
Unidad_3_T1_AutomatasFinitos presentacion
 

Base de datos

  • 1. By LeaySazory & azmeruq 1. Introducción a Base de Datos By LeaySazory & azmeruq
  • 2. By LeaySazory & azmeruq By LeaySazory & azmeruq ÍNDICE Introducción a base de datos ……………………………………….. 3 Modelo relacional ………………………………………………………… 24 Lenguaje estructurado de consulta (SQL) ……………………… 41 Almacén de datos …………………………………………………………. 64 Software de diseño de base de datos ……………………………. 73 Funciones en SQL ………………………………………………………….. 76
  • 3. By LeaySazory & azmeruq 1.1. ¿Qué es un sistema gestor de bases de datos? Un sistema gestor de bases de datos (SGBD) consiste en una colección de datos interrelacionados y un conjunto de programas para acceder a dichos datos. Un sistema gestor de base de datos (SGBD) o Database Management System (DBMS)
  • 4. By LeaySazory & azmeruq
  • 5. By LeaySazory & azmeruq 1.2. Aplicaciones de los sistemas de bases de datos.
  • 6. By LeaySazory & azmeruq Banca líneas aéreas bases de datos
  • 7. By LeaySazory & azmeruq universidades telecomunicaciones transacciones de tarjetas
  • 8. By LeaySazory & azmeruq Finanzas ventas compra venta en línea
  • 9. By LeaySazory & azmeruq comercio en línea producción web
  • 10. By LeaySazory & azmeruq artículos recursos humanos prestaciones sociales
  • 11. By LeaySazory & azmeruq En los primeros días, muy pocas personas interactúan directamente con los sistemas de bases de datos, aunque sin darse cuenta interactúan directamente con bases de datos con informes impresos como los extractos de las tarjetas interfaces telefónicas con las computadoras (sistemas de respuesta vocal interactiva) también permitieron a los usuarios tratar directamente con las bases de datos la persona que llamaba podía marcar un número y pulsar las teclas del teléfono para introducir información
  • 12. By LeaySazory & azmeruq 1.3. Propósito de los sistemas de bases de datos
  • 13. By LeaySazory & azmeruq Los sistemas de bases de datos surgieron en respuesta a los primeros métodos de gestión informatizada de los datos comerciales, entre otros datos, guarda información sobre todos los clientes y todas las cuentas de ahorro. ❖ Efectuar cargos o abonos en las cuentas. ❖ Añadir cuentas nuevas. ❖ Calcular el saldo de las cuentas. ❖ Generar los extractos mensuales.
  • 14. By LeaySazory & azmeruq Redundancia e inconsistencia de los datos: La información que esté duplicada en varios lugares (archivos). Esta conduce a costes de almacenamiento y de acceso más elevados, además puede que los mismos datos no coincidan. Dificultad en el acceso a los datos: Los entornos de procesamiento de archivos convencionales no permiten recuperar los datos necesarios de una forma práctica y eficiente.
  • 15. By LeaySazory & azmeruq Aislamiento de datos: Los datos están dispersos en varios archivos, y los archivos pueden estar en diferentes formatos. Problemas de integridad: Los datos almacenados en la base de datos deben satisfacer ciertos tipos de restricciones de consistencia.
  • 16. By LeaySazory & azmeruq Problemas de atomicidad: Es crucial asegurar que, si se produce algún fallo, los datos se restauran al estado consistente que existía antes del fallo. Anomalías en el acceso concurrente: Para aumentar el rendimiento y obtener una respuesta más rápida, muchos sistemas permiten que varios usuarios actualicen los datos simultáneamente. https://es.wikipedia.org/wiki/Red_de_computadoras
  • 17. By LeaySazory & azmeruq Problemas de seguridad: No todos en un sistema de base de datos deben poder acceder a todos los datos.
  • 18. By LeaySazory & azmeruq 1.4. Bases de datos Relacional Una base de datos relacional es un tipo de base de datos que almacena y proporciona acceso a puntos de datos relacionados entre sí. Las bases de datos relacionales se basan en el modelo relacional.
  • 19. By LeaySazory & azmeruq Funciones principales del administrador de base de datos ● Asegurar el buen funcionamiento de las BD’s ● Retención de información de la BD ● Evitar pérdida de datos ● Solucionar incidencias ● Garantizar la seguridad de los datos
  • 20. By LeaySazory & azmeruq Responsabilidades del sistema gestor de base de datos ● Instalar, configurar y gestionar BD’s ● Dar soporte al equipo de desarrollo, seguridad informática y redes ● Definir el esquema del diccionario de datos ● Especificar restricciones de integridad para asegurar los datos ● Garantizar la alta disponibilidad de la BD
  • 21. By LeaySazory & azmeruq Operaciones sobre los archivos en una BD CRUD ● Agregar archivos nuevos en la BD ● Insertar datos ● Eliminar datos ● Actualizar datos ● Obtener datos de archivos existentes de la BD
  • 22. By LeaySazory & azmeruq
  • 23. By LeaySazory & azmeruq Sistema de información Es un conjunto de elementos orientados al tratamiento y administración de datos e información, organizados y listos para su posterior uso, generados para cubrir una necesidad.
  • 24. By LeaySazory & azmeruq 2. Modelo Relacional
  • 25. By LeaySazory & azmeruq 2.1. La estructura de bases de datos relacionales Una base de datos relacional consiste en un conjunto de tablas, a las cuales se les asigna un nombre exclusivo. Cada fila de la tabla representa una relación entre un conjunto de valores.
  • 26. By LeaySazory & azmeruq 2.2.El modelo de entidad-relación Fue introducido por Peter Chen en 1976. El modelo entidad-relación está formado por un conjunto de conceptos que permiten describir la realidad mediante un conjunto de representaciones gráficas y lingüísticas.
  • 27. By LeaySazory & azmeruq
  • 28. By LeaySazory & azmeruq Entidad: Cualquier tipo de objeto o concepto sobre el que se recoge información: cosa, persona, concepto abstracto o suceso. Por ejemplo: coches, casas, empleados, clientes, empresas, oficios, diseños de productos, conciertos, excursiones, etc. Hay 2 tipos de entidades: fuertes y débiles
  • 29. By LeaySazory & azmeruq 2.3.Diagramas entidad relación https://jamboard.google.com/d/1E4xnQZgpYqGJEALTT3sMgSgqzlXruCgxycE393VLA60/edit?usp=sharing
  • 30. By LeaySazory & azmeruq ❖ Rectángulos, que representan conjuntos de entidades. ❖ Elipses, que representan atributos. ❖ Rombos, que representan conjuntos de relaciones.
  • 31. By LeaySazory & azmeruq ❖ Líneas, que unen los atributos con los conjuntos de entidades y los conjuntos de entidades con los conjuntos de relaciones. ❖ Elipses dobles, que representan atributos multivaluados. ❖ Elipses discontinuas, que denotan atributos derivados.
  • 32. By LeaySazory & azmeruq ❖ Líneas dobles, que indican participación total de una entidad en un conjunto de relaciones. ❖ Rectángulos dobles que representan conjuntos de entidades débiles.
  • 33. By LeaySazory & azmeruq
  • 34. By LeaySazory & azmeruq
  • 35. By LeaySazory & azmeruq
  • 36. By LeaySazory & azmeruq 2.4.Aspectos de diseño entidad relación Los conceptos de conjunto de entidades y de conjunto de relaciones no son precisos, y es posible definir el conjunto de entidades y las relaciones entre ellas de diferentes formas.
  • 37. By LeaySazory & azmeruq
  • 38. By LeaySazory & azmeruq
  • 39. By LeaySazory & azmeruq YAEL MÁRQUEZ ROCÍO MÁRQUEZ - azmeruq
  • 40. By LeaySazory & azmeruq https://app.diagrams.net/
  • 41. By LeaySazory & azmeruq 3. Lenguaje estructurado de consulta (SQL) 3.1. Características del lenguaje SQL. Utilidad del lenguaje. El lenguaje SQL, o lenguaje de consulta estructurado, es hoy el más utilizado en cualquier ámbito en el que se trabaje con bases de datos. Se trata de un lenguaje que permite acceder, modificar o eliminar la información
  • 42. By LeaySazory & azmeruq Las distintas aplicaciones del lenguaje SQL El internet ha llevado a las bases de datos a otro nivel. Son la clave del funcionamiento de las páginas web, por lo que SQL tiene una especial importancia en el ámbito digital. Una base de datos correctamente estructurada es una herramienta enormemente útil con un rendimiento muy alto, Cualquier persona que trabaje con análisis de datos o tratamiento de información
  • 43. By LeaySazory & azmeruq 3.2.Comandos SQL .Grupos de comando
  • 44. By LeaySazory & azmeruq ❖ Comandos de definición de datos (DDL = Data Definition Language) ❖ Comandos de manipulación de datos (DML = Data Manipulation Language),que permiten generar consultas para ordenar, filtrar y extraer datos. ❖ Comandos de control y seguridad de datos, que gobiernan los privilegios de los usuarios.
  • 45. By LeaySazory & azmeruq Operadores Lógicos Operadores de comparación
  • 46. By LeaySazory & azmeruq Funciones de agregación
  • 47. By LeaySazory & azmeruq http://dbadixit.com/delete-y-truncate-table/#:~:text=A%20diferencia%20del%20comando%20DELETE,para%20que%20se%20puedan%20reocupar.
  • 48. By LeaySazory & azmeruq http://sql.11sql.com/sql-unique.htm https://www.w3schools.com/sql/sql_unique.asp UNIQUE Se utiliza para garantizar que no se inserten valores duplicados en una columna específica
  • 49. By LeaySazory & azmeruq CREATE DB https://www.w3schools.com/sql/sql_create_db.asp CREATE TABLE https://www.w3schools.com/sql/sql_create_table.asp DROP TABLE https://www.w3schools.com/sql/sql_drop_table.asp ALTER TABLE https://www.w3schools.com/sql/sql_alter.asp EJERCICIO By LeaySazory & azmeruq
  • 50. By LeaySazory & azmeruq SELECT https://www.w3schools.com/sql/sql_select.asp INSERT https://www.w3schools.com/sql/sql_insert.asp UPDATE https://www.w3schools.com/sql/sql_update.asp DELETE https://www.w3schools.com/sql/sql_delete.asp EJERCICIO SELECT * FROM Customers WHERE City="Berlin"; By LeaySazory & azmeruq
  • 51. By LeaySazory & azmeruq FROM https://www.w3schools.com/sql/sql_select.asp WHERE https://www.w3schools.com/sql/sql_where.asp GROUP BY https://www.w3schools.com/sql/sql_groupby.asp HAVING https://www.w3schools.com/sql/sql_having.asp ORDER BY https://www.w3schools.com/sql/sql_orderby.asp EJERCICIO By LeaySazory & azmeruq
  • 52. By LeaySazory & azmeruq AND, OR, NOT https://www.w3schools.com/sql/sql_and_or.asp EJERCICIO By LeaySazory & azmeruq
  • 53. By LeaySazory & azmeruq OPERATOR’S https://www.w3schools.com/sql/sql_operators.asp LIKE https://www.w3schools.com/sql/sql_like.asp IN https://www.w3schools.com/sql/sql_in.asp BETWEEN https://www.w3schools.com/sql/sql_between.asp EJERCICIO By LeaySazory & azmeruq
  • 54. By LeaySazory & azmeruq COUNT / AVG / SUM https://www.w3schools.com/sql/sql_count_avg_sum.asp MAX / MIN https://www.w3schools.com/sql/sql_min_max.asp By LeaySazory & azmeruq
  • 55. By LeaySazory & azmeruq 3.3.Definición de datos
  • 56. By LeaySazory & azmeruq ❖ El esquema de cada relación. ❖ Las restricciones de integridad. ❖ El dominio de valores asociado a cada atributo. ❖ El conjunto de índices que se deben mantener para cada relación. ❖ La información de seguridad y de autorización de cada relación. ❖ La estructura de almacenamiento físico de cada relación en el disco. El conjunto de relaciones de cada base de datos debe especificarse en el sistema en términos de un lenguaje de definición de datos (LDD). El LDD de SQL no sólo permite la especificación de un conjunto de relaciones, sino también de la información relativa a esas relaciones, incluyendo:
  • 57. By LeaySazory & azmeruq Tipos básicos de dominios: ❖ char(n): Una cadena de caracteres de longitud fija, con una longitud especificada por el usuario.También se puede utilizar la palabra completa character ❖ varchar(n): Una cadena de caracteres de longitud variable con una longitud máxima n especificada por el usuario. La forma completa, character varying, es equivalente. ❖ int: Un entero (un subconjunto finito de los enteros dependiente de la máquina). La palabra completa, integer, es equivalente.
  • 58. By LeaySazory & azmeruq ❖ smallint: Un entero pequeño (un subconjunto dependiente de la máquina del tipo de dominio entero). ❖ numeric(p, d): Un número de coma fija, cuya precisión la especifica el usuario. El número está formado por p dígitos (más el signo), y de esos p dígitos, d pertenecen a la parte decimal. Así, numeric(3,1) permite que el número 44.5 se almacene exactamente, pero ni 444.5 ni 0.32 se pueden almacenar exactamente en un campo de este tipo. ❖ real: Números de coma flotante y números de coma flotante de doble precisión, con precisión dependiente de la máquina. ❖ float(n): Un número de coma flotante cuya precisión es, al menos, de n dígito. ❖ ❖ STACK OVERFLOW
  • 59. By LeaySazory & azmeruq
  • 60. By LeaySazory & azmeruq 3.4.Estructura básica de las consultas SQL Las bases de datos relacionales están formadas por un conjunto de relaciones, a cada una de las cuales se le asigna un nombre único, SQL permite el uso de valores nulos para indicar que el valor es desconocido o no existe.
  • 61. By LeaySazory & azmeruq SQL consta de tres cláusulas: La cláusula select se corresponde con la operación proyección del álgebra relacional. La cláusula from se corresponde con la operación producto cartesiano del álgebra relacional. La cláusula where se corresponde con el predicado selección del álgebra relacional.
  • 62. By LeaySazory & azmeruq https://www.w3schools.com/sql/trysql.asp?filename=trysql_select_all SELECT * FROM Customers WHERE Country="Mexico";
  • 63. By LeaySazory & azmeruq 4. Almacén de datos
  • 64. By LeaySazory & azmeruq 4.1. Esquemas de almacenes de datos Data warehouse es un sistema que agrega y combina información de diferentes fuentes en un almacén de datos único y centralizado; consistente para respaldar el análisis empresarial, la minería de datos, inteligencia artificial y Machine Learning.
  • 65. By LeaySazory & azmeruq Esquema estrella: Se conoce como esquema estelar ya que su estructura se asemeja a una estrella, es el tipo más simple de esquema de Data Warehouse. Características del esquema: ● Cada dimensión en un esquema de estrella se representa con la única tabla de una dimensión. ● La tabla de dimensiones debe contener el conjunto de atributos. ● La tabla de dimensiones se une a la tabla de hechos utilizando una clave foránea. ● Las tablas de dimensiones no están unidas entre sí. ● La tabla de hechos contendría clave y medida.
  • 66. By LeaySazory & azmeruq Esquema copo de nieve: Un esquema de copo de nieve es una extensión de un esquema de estrella y agrega dimensiones adicionales. Las tablas de dimensiones están normalizadas, lo que divide los datos en tablas adicionales. En el siguiente ejemplo, País se normaliza aún más en una tabla individual. YAEL MÁRQUEZ ROCÍO MÁRQUEZ - azmeruq
  • 67. By LeaySazory & azmeruq ❖ El principal beneficio del esquema de copo de nieve es que utiliza un espacio en disco más pequeño. ❖ Debido a múltiples tablas, el rendimiento de la consulta se reduce. ❖ El principal desafío que enfrentará al usar el esquema de copo de nieve es que necesita realizar más esfuerzos de mantenimiento debido a que hay más tablas de búsquedas.
  • 68. By LeaySazory & azmeruq Esquema Galaxy: Un esquema Galaxy contiene dos tablas de hechos que comparten tablas de dimensiones. También se llama Fact Constellation Schema. El esquema se ve como una colección de estrellas, de ahí el nombre Galaxy Schema.
  • 69. By LeaySazory & azmeruq 4.2. Diseño de almacenes de bases de datos práctica Dentro de la metodología de diseño de un almacén de datos se encuentran tres etapas diferenciadas que deben ejecutarse en orden secuencial para la obtención del modelo multidimensional deseado. YAEL MÁRQUEZ ROCÍO MÁRQUEZ - azmeruq
  • 70. By LeaySazory & azmeruq Diseño conceptual: Un esquema multidimensional representa una actividad que es objeto de análisis (hecho) y las dimensiones que caracterizan la actividad (dimensiones). La información relevante sobre el hecho se representa por un conjunto de indicadores (medidas o atributos de hecho). YAEL MÁRQUEZ ROCÍO MÁRQUEZ - azmeruq
  • 71. By LeaySazory & azmeruq Diseño lógico: Una vez definido el modelo multidimensional con el esquema que se haya seleccionado, se transformará el diagrama de clases UML a un diagrama relacional sobre el que trabajaremos y hemos comentado anteriormente, ROLAP. YAEL MÁRQUEZ ROCÍO MÁRQUEZ - azmeruq
  • 72. By LeaySazory & azmeruq Diseño físico: Trata de buscar una optimización de los tiempos de consulta sobre las tablas de hechos y dimensiones. En la tabla de hechos se van a realizar acciones de creación de índices sobre los identificadores de las dimensiones. El orden de las columnas al crear el índice es muy importante. https://es.wikipedia.org/wiki/Lengua je_unificado_de_modelado
  • 73. By LeaySazory & azmeruq 5. Software de diseño de base de datos YAEL MÁRQUEZ ROCÍO MÁRQUEZ - azmeruq
  • 74. By LeaySazory & azmeruq MySQL Workbench Un editor visual de base de datos MySQL que cuenta con el respaldo oficial de MySQL. Sin duda la herramienta se caracteriza por su editor de diagramas; imagen o PDF o bien generar un script SQL CREATE o ALTER. MySQL y para Windows, Mac OS X y Linux.
  • 75. By LeaySazory & azmeruq Crear y manejar bases de datos de forma local, es la herramienta que estás buscando. Con la utilidad podrás crear, gestionar y eliminar bases de datos, tablas y campos. phpMyAdmin Podrás importar en CSV y SQL y exportar en CSV, SQL, XML, PDF, ISO / IEC 26300, Word y Excel entre otros. phpMyAdmin es una herramienta de software libre disponible en español y desarrollada bajo entorno PHP YAEL MÁRQUEZ ROCÍO MÁRQUEZ - azmeruq
  • 76. By LeaySazory & azmeruq 6. Funciones en SQL El lenguaje SQL tiene funciones incorporadas para hacer cálculos sobre los datos. Las funciones se pueden dividir en dos grupos (existen muchas más, que dependen del sistema de bases de datos que se utilice). YAEL MÁRQUEZ ROCÍO MÁRQUEZ - azmeruq
  • 77. By LeaySazory & azmeruq ● AVG() - La media de los valores ● COUNT() - El número de filas
  • 78. By LeaySazory & azmeruq ● SUM() - La suma de los valores https://www.w3schools.com/sql/sql_c ount_avg_sum.asp EJERCICIO YAEL MÁRQUEZ ROCÍO MÁRQUEZ - azmeruq
  • 79. By LeaySazory & azmeruq ● MAX() - El valor más grande ● MIN() - El valor más pequeño https://www.w3schools.com/sql/sql_m in_max.asp EJERCICIO
  • 80. By LeaySazory & azmeruq ● GROUP BY - Es una sentencia que va muy ligada a las funciones agregadas https://www.w3schools.com/sql/sql_gr oupby.asp EJERCICIO
  • 81. By LeaySazory & azmeruq ● Funciones escalares SQL, devuelve un sólo valor basándose en el valor de entrada. https://www.w3schools.co m/sql/sql_ref_mysql.asp
  • 82. By LeaySazory & azmeruq ● UCASE() Convierte un campo a mayúsculas ● LCASE() - Convierte un campo a minúsculas https://www.w3schools.com/sql/func_ sqlserver_upper.asp EJERCICIO
  • 83. By LeaySazory & azmeruq ● LEN() - Devuelve la longitud de un campo de texto ● NOW() - Devuelve la hora y fecha actuales del sistema ● FORMAT() - Da formato a un formato para mostrarlo
  • 84. By LeaySazory & azmeruq ● MID() - Extrae caracteres de un campo de texto MID() https://www.w3schools.com/sq l/func_mysql_mid.asp LEN() https://www.w3schools.com/sq l/func_sqlserver_len.asp NOW() https://www.w3schools.com/sq l/func_mysql_now.asp FORMAT() https://www.w3schools.com/sq l/func_sqlserver_format.asp By LeaySazory & azmeruq
  • 85. By LeaySazory & azmeruq https://www.w3schools.com/sql/sql_primarykey.asp
  • 86. By LeaySazory & azmeruq https://www.w3schools.com/sql/sql_foreignkey.asp By LeaySazory & azmeruq
  • 87. By LeaySazory & azmeruq https://www.w3schools.com/sql/sql_insert.asp Agregar especificando valores: Agregar a todos los valores de la tabla:
  • 88. By LeaySazory & azmeruq Agregar varios valores a varias filas:
  • 89. By LeaySazory & azmeruq
  • 90. By LeaySazory & azmeruq 7. Triggers en SQL Un trigger o disparador es un script que se usa en lenguaje de programación SQL, en especial en bases de datos como MySQL o PostgreSQL. Consiste en una serie de reglas predefinidas que se asocian a una tabla.
  • 91. By LeaySazory & azmeruq ¿Para qué sirve? La principal función de los trigger es contribuir a mejorar la gestión de la base de datos. Gracias a ellos muchas operaciones se pueden realizar de forma automática.
  • 92. By LeaySazory & azmeruq ¿Cuándo se puede usar un Trigger? Los trigger se puede ejecutar cuando el usuario realiza alguna acción relacionada con añadir, actualizar o eliminar información de una tabla. Es decir, al usar los comandos INSERT, UPDATE o DELETE.
  • 93. By LeaySazory & azmeruq https://www.w3resource.com/mysql/mysql-triggers.php https://www.geeksforgeeks.org/sql-trigger-student-database/
  • 94. By LeaySazory & azmeruq 8. Consultas en SQL 8.1. Consultas de Acción: Las consultas de acción son aquellas que no devuelven ningún registro, son las encargadas de acciones como añadir, borrar y modificar registros. Tanto las sentencias de actualización como las de borrado la desencadenan.
  • 95. By LeaySazory & azmeruq ● La cláusula select se corresponde con la operación proyección del álgebra relacional. ● La cláusula from se corresponde con la operación producto cartesiano del álgebra relacional. ● La cláusula where se corresponde con el predicado selección del álgebra relacional. By LeaySazory & azmeruq
  • 96. By LeaySazory & azmeruq 8.2.Creación de tablas Las tablas se utilizan para almacenar datos en la base de datos. Las tablas tienen nombres únicos dentro de una base de datos y un esquema, Cada tabla contiene una o más columnas y cada columna tiene un tipo de datos asociado.
  • 97. By LeaySazory & azmeruq 8.3.Actualización: Update es la instrucción del lenguaje SQL que nos sirve para modificar los registros de una tabla. Como para el caso de Delete, necesitamos especificar por medio de Where. https://www.w3schools.com/mysql/mysql_update.asp
  • 98. By LeaySazory & azmeruq 8.4.Eliminación: La instrucción DELETE permite eliminar uno o múltiples registros. Incluso todos los registros de una tabla, dejándola vacía. Su sintaxis es general, define las condiciones que deben cumplir los registros que se desean eliminar.
  • 99. By LeaySazory & azmeruq 8.5. Inserción: INSERT es una sentencia SQL que añade datos a una tabla. La sentencia INSERT tiene el formato siguiente, nom_tabla es el nombre de la tabla o vista en la que se desea insertar datos y valor1, valor2 (etc.).
  • 100. By LeaySazory & azmeruq SELECT https://www.w3schools.com/sql/sql_select.asp INSERT https://www.w3schools.com/sql/sql_insert.asp UPDATE https://www.w3schools.com/sql/sql_update.asp DELETE https://www.w3schools.com/sql/sql_delete.asp YAEL MÁRQUEZ ROCÍO MÁRQUEZ - azmeruq
  • 101. By LeaySazory & azmeruq 8.6. Consultas de selección: Cuando quiera seleccionar datos específicos de uno o varios orígenes, use una consulta de selección. Una consulta de selección le ayuda a recuperar únicamente los datos que le interesen
  • 102. By LeaySazory & azmeruq 8.7. Consulta Multitabla 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
  • 103. By LeaySazory & azmeruq https://www.w3schools.com/mySQl/sql_ref_join.asp https://www.w3schools.com/mySQl/mysql_join_inner.asp https://www.w3schools.com/mySQl/mysql_join_left.asp https://www.w3schools.com/mySQl/mysql_join_right.asp
  • 104. By LeaySazory & azmeruq Composiciones cruzadas (Producto cartesiano) El producto cartesiano de dos conjuntos, es una operación que consiste en obtener otro conjunto cuyos elementos son todas las parejas que pueden formarse entre los dos conjuntos. Por ejemplo.
  • 105. By LeaySazory & azmeruq By LeaySazory & azmeruq
  • 106. By LeaySazory & azmeruq
  • 107. By LeaySazory & azmeruq Composiciones internas (Intersección) La intersección de dos conjuntos es una operación que resulta en otro conjunto que contiene sólo los elementos comunes que existen en ambos conjuntos.
  • 108. By LeaySazory & azmeruq By LeaySazory & azmeruq
  • 109. By LeaySazory & azmeruq 8.8. Consultas de Agrupación: La cláusula GROUP BY te permite organizar las filas de una consulta en grupos. Los grupos están determinados por las columnas que se especifican en la cláusula GROUP BY. En esta consulta, la cláusula GROUP BY regresa un grupo para cada combinación de los valores en las columnas enumeradas en la cláusula GROUP BY.
  • 110. By LeaySazory & azmeruq FROM https://www.w3schools.com/sql/sql_select.asp WHERE https://www.w3schools.com/sql/sql_where.asp GROUP BY https://www.w3schools.com/sql/sql_groupby.asp HAVING https://www.w3schools.com/sql/sql_having.asp ORDER BY https://www.w3schools.com/sql/sql_orderby.asp EJERCICIO
  • 111. By LeaySazory & azmeruq https://www.w3school-learn.com/20 18/01/sql-subquery.html https://www.aulaclic.es/sql/t_5_1.htm https://www.srcodigofuente.es/subc onsultas-en-sql ALIAS
  • 112. By LeaySazory & azmeruq 1 2 3 4 5 6 7 Devuelve todos los productos del fabricante Lenovo.
  • 113. By LeaySazory & azmeruq SELECT * FROM Producto WHERE codigo_fabricante = ( PRODUCTO FABRICANTE codigo nombre precio codigo_fabricante codigo nombre SELECT codigo FROM fabricante WHERE nombre = 'Lenovo')
  • 114. By LeaySazory & azmeruq