muchas gracias por el aporte compañeros
Bienvenida conceptos básicos y contexto histórico de las Bases de Datos
Bienvenida conceptos básicos y contexto histórico de las Bases de Datos
Playground: tu primera consulta en bases de datos
Introducción a las bases de datos relacionales
Historia de las bases de datos relacionales
Qué son entidades y atributos
Entidades de Platzi Blog
Relaciones
Múltiples muchos
Diagrama ER
Diagrama Físico: tipos de datos y constraints
Diagrama Físico: normalización
Formas normales en Bases de Datos relacionales
Diagrama Físico: normalizando Platziblog
RDBMS (MySQL) o cómo hacer lo anterior de manera práctica
¿Qué es RDB y RDBMS?
Instalación local de un RDBMS (Windows)
Instalación local de un RDBMS (Mac)
Instalación local de un RDBMS (Ubuntu)
Clientes gráficos
Servicios administrados
SQL hasta en la sopa
Historia de SQL
DDL create
Playground: CREATE TABLE
CREATE VIEW y DDL ALTER
DDL drop
Playground: VIEW, ALTER y DROP en SQL
DML
Playground: CRUD con SQL
¿Qué tan standard es SQL?
Creando Platziblog: tablas independientes
Creando Platziblog: tablas dependientes
Creando Platziblog: tablas transitivas
Consultas a una base de datos
¿Por qué las consultas son tan importantes?
Estructura básica de un Query
SELECT
Playground: SELECT en SQL
FROM y SQL JOINs
Utilizando la sentencia FROM
Playground: FROM y LEFT JOIN en SQL
WHERE
Utilizando la sentencia WHERE nulo y no nulo
Playground: Filtrando Datos con WHERE
GROUP BY
ORDER BY y HAVING
Playground: Agrupamiento y Ordenamiento de Datos
El interminable agujero de conejo (Nested queries)
¿Cómo convertir una pregunta en un query SQL?
Preguntándole a la base de datos
Consultando PlatziBlog
Playground: Prueba Final con PlatziBlog
Introducción a la bases de datos NO relacionales
¿Qué son y cuáles son los tipos de bases de datos no relacionales?
Servicios administrados y jerarquía de datos
Manejo de modelos de datos en bases de datos no relacionales
Top level collection con Firebase
Creando y borrando documentos en Firestore
Colecciones vs subcolecciones
Recreando Platziblog
Construyendo Platziblog en Firestore
Proyecto final: transformando tu proyecto en una db no relacional
Bases de datos en la vida real
Bases de datos en la vida real
Big Data
Data warehouse
Data mining
ETL
Business intelligence
Machine Learning
Data Science
¿Por qué aprender bases de datos hoy?
Bonus
Bases de datos relacionales vs no relacionales
Elegir una base de datos
No tienes acceso a esta clase
¡Continúa aprendiendo! Únete y comienza a potenciar tu carrera
Israel Vázquez Morales
FROM indica de dónde se deben traer los datos y puede ayudar a hacer sentencias y filtros complejos cuando se quieren unir tablas. La sentencia compañera que nos ayuda con este proceso es JOIN.
Los diagramas de Venn son círculos que se tocan en algún punto para ver dónde está la intersección de conjuntos. Ayudan mucho para poder formular la sentencia JOIN de la manera adecuada dependiendo del query que se quiere hacer.
Aportes 155
Preguntas 23
muchas gracias por el aporte compañeros
Complementando el comentario de Christian Gómez de Teoría de Conjuntos, le agrego las imágenes para mayor referencia.
Un explicación grafica:
Esta Foto hizo que todo me quedara clarisimo. Espero les sirva 😄 ❤️
Indica de dónde se deben traer los datos y puede ayudar a hacer sentencias y filtros complejos cuando se quieren unir tablas. La sentencia compañera que nos ayuda con este proceso es JOIN.
Los diagramas de Venn son círculos que se tocan en algún punto para ver dónde está la intersección de conjuntos. Ayudan mucho para poder formular la sentencia JOIN de la manera adecuada dependiendo del query que se quiere hacer.
.
.
2. Intersección:
![](
Con este diagrama, entendi y uso constante mente para hacer los join
Apuntes:
Los FROM vienen acompañados a veces de algo muy útil como lo son los JOIN, los cuales pueden permitirnos unir en una consulta, datos de otras tablas de manera dinámica. Los JOIN pueden ser de muchos tipos:
Diferencia
Este tipo de JOIN pueden permitirnos excluir o incluir ciertos datos que especifiquemos de una tabla o de otra, así como también excluir totalmente los datos de la segunda tabla asociada. Para este caso se usa LEFT JOIN o RIGHT JOIN.
Intersección
Tambien se pueden incluir elementos que se encuentren en ambas tablas asociadas gracias a INNER JOIN. En este caso en particular se excluyen elementos tanto de la primera como de la segunda tabla asociada.
Union
Para la unión, se incluyen absolutamente todos los datos de ambas tablas en relación.
Diferencia simétrica
Este caso en particular excluye aquellos datos que no tengan relación asociada para ambas tablas, es decir, aquellos datos que en sus llaves foráneas no tienen registros que asocien a las 2 tablas en particular.
Para la unión y diferencia simétrica se usa OUTER JOIN.
![](
1 año sin entenderlo en la universidad, y en un video de 7 minutos me quedó clarísimo !!
En teoría de conjuntos el diagrama de venn representa un agrupamiento de dagtos, mejor conocidos como conjuntos, cada conjunto tendrá un determinado tipo de información. Muchas veces estos datos pueden pertenecer a más de un conjunto y es cuando se presenta una intersección. O varias intersecciones. En teoría de conjuntos también tenemos unión, intersección, diferencia (resta), complemento.
En esta ocación percibimos a una tabla como un conjunto y gracias a sus llaves fóraneas podemos concluir que un dato (fila) dentro de una tabla también puede pertenecer a otra, eso es lo que podría considerarse como intersección.
Ese es parte de mi apunte, cualquier sugerencia será agradecida y bien recibida. 😄
FROM
Esta clase si me costo, tuve que repetir el video 4 veces
He intentado hacer un ** Inner Join** de mi base de datos UNIVERSIDAD, de mis tablas Alumnos y Profesion. Y este es el resultado.
-*
-*
Tienes que ver esto para que te quede super claro JOIN, INNER JOIN, LEFT JOIN y RIGHT JOIN.
Es una lectura de 3 mins con ejemplos
https://diego.com.es/principales-tipos-de-joins-en-sql
Les comparto estas dos páginas en las cuales pueden practicar sus consultas (Query’s) en una base de datos en línea:
Muy útil el uso de diagramas de Venn para explicar los JOIN.
los JOINS: nos permiten relacionar unas tablas con otras, para completar la información, esta directamente relaciona con la TEORÍA DE CONJUNTOS
existen varios tipos de JOINS
estan:
LEFT JOIN: es de tipo diferencia, este trae todo el contenido de la tabla principal y algunos datos que este relacionados con la tabla principal Ejemplo:
USURIOS -> POST= trae todos los USUARIOS y los POST que tengan relacion con USUARIOS
RIGHT JOIN: es de tipo diferencia, este trae todo el contenido de la tabla relacionada y algunos datos de la tabla principal que esten relacionados Ejemplo:
USURIOS -> POST= trae todos los POST y los USUARIOS que tengan relación con POST
Old fashion vs new:
En el video Israel menciona “diferencia asimétrica” en vez de “simétrica”, la diapositiva está correcta únicamente se equivocó al nombrarla
De hecho el uso de diagramas de Venn para las consultas JOIN es muy útil porque te permiten elegir qué es lo que realmente quieres traer, así que antes de hacer una consulta JOIN es buena idea mirar un diagrama de Venn para estarseguros de lo que queremos traer:D!
Los diagramas de Venn son círculos que se tocan en algún punto para ver dónde está la intersección de conjuntos. Ayudan mucho para poder formular la sentencia JOIN de la manera adecuada dependiendo del query que se quiere hacer.
Vaya que son muy importantes ya que en la industria se utilizan mucho!
cuando dice teoría de conjuntos y que seguro ya lo he escuchado en matematicas jajaja cuando ni he terminado el colexD
tengo una pregunta, ya sabemos como ligar las tablas entre si, pero me gustaria saber si se puede hacer un menu desplegable en una columna cuya informacion sea de otra tabla, imaginen esto, quiero llevar el control basado en categorias, pero para mi es crucial que los que agreguen informacion usen las mismas categorias, podria tener una tabla solo con categorias ligada de alguna manera para que esto sea un menu desplegable?
Me encanta la forma de explicar de Israel
Que buena explicación.
Y pensar que esto era de lo mas duro del parcial
Con esta clase, va tomando sentido como una pregunta se puede transformar en un query…
Excelente video 😃
https://stevestedman.com/ tiene muchos recursos gratitos incluyendo tablas.pdf de los diferentes joins en SQL y MySQL 🙂👌
Les comparto mi versión de la clase con las tablas que estamos trabajando!
✌️Hola, les comparto mis apuntes. Los invito a seguirme en Twitter y LinkdIn, para hacer Networking y cooperar en proyectos.
INTERSECION
Este es un CheatSheet bien completo para el uso de los JOINS 😃
Descargar CheatSheet
FROM indica de dónde se deben traer los datos y puede ayudar a hacer sentencias y filtros complejos cuando se quieren unir tablas. La sentencia compañera que nos ayuda con este proceso es JOIN.
25. Mis apuntes sobre: “FROM”
JOIN nos ayuda a unir tablas usándola con la sentencia FROM
De los JOIN existen:
*Diferencia: LEFT JOIN, RIGHT JOIN
*Intersección: INNER JOIN/JOIN, OUTER JOIN
INNER JOIN: Devuelve todas las filas cuando hay al menos una coincidencia en ambas tablas.
LEFT JOIN: Devuelve todas las filas de la tabla de la izquierda, y las filas coincidentes de la tabla de la derecha.
RIGHT JOIN: Devuelve todas las filas de la tabla de la derecha, y las filas coincidentes de la tabla de la izquierda.
OUTER JOIN: Devuelve todas las filas de las dos tablas, la izquierda y la derecha. También se llama FULL OUTER JOIN.
esta cada vez mas interesante
super excelente explicacion!
★★★★★
Cuando vemos las matemáticas aplicadas es una belleza!
FROM
JOIN
es una sentencia que va siempre acompaniada del FROM
nos ayuda a unir tablas a traves de las relaciones creadas, es decir la relacion, entre la llave primaria de una tabla con la llave foranea que referencia a esa llave primaria desde otra tabla.
EXISTEN DIFERENTES TIPOS DE JOIN
DIFERENCIA siginifica lo que tenemos en un lado pero no esta en el otro.
LEFT JOIN, trae todos los datos de la tabla A, esten o no
esten en la tabla B. Ejemplo: trae todos los usuarios, hayan publicado un post o no.
RIGHT JOIN, traeme todo lo que esta en la tabla B, sin importar si esta o no en la tabla A. Ejemplo: trae todos los posts aunque no tenga ningun usuario que los haya creado.
INTERSECCION es la parte en donde se encuentran los unidos dos diagramas o tablas, y es el que generalmente vamos a ver.
INNER JOIN o JOIN INTERNO, va traer los valores que existen tanto en la tabla A y en la tabla B.
UNION trae todo, va traer todos los usuarios tengan o no tengan posts y va traer todos los posts tengan o no tengan usuarios que los hayan creado.
DIFERENCIA SIMETRICA va traer todos los usuarios que no hayan escrito algun post, y todos los post que no hayan sido escritos por algun usuario o esten guerfanos.
Que entretenido se hace estudiar con el Profe. Me encanta este curso 🌻
Les dejo el canal de Youtube de un programador de base de datos con una explicación de From y Join de como utilizarlos
https://www.youtube.com/watch?v=qCfMFF1SjjQ&ab_channel=RafaGonzalezGouveia
Quien diria que este tema(teoria de conjuntos) funcionaria aqui.
FROM: Es una de las sentencias mas poderosas.
LEFT JOIN: Si deseamos saber los datos de la tabla A, sin importar que estén o no en la tabla B.
LEFT JOIN (con condición): Deseamos saber los datos que están únicamente en la tabla A (excluimos a la tabla B).
RIGHT JOIN: Si deseamos saber los datos de la tabla B, sin importar que estén o no en la tabla A.
RIGHT JOIN (con condición): Deseamos saber los datos que están únicamente en la tabla B (excluimos a la tabla A).
Una duda, en los enlaces donde tenemos los datos para realizar los ejercicios, los datos se ingresan por tabla? o desde schema,
FROM: indica de donde vamos a extraer los datos. Va de la mano con el comando JOIN para hacer consultas a distintas tablas. Para entender JOIN recordemos teor[ia de conjuntos.
Nota:
Indica de donde se traeran los datos, su potencial verdadero este en ejecutarlo con la sentencia JOIN que nos ayudara a unir las tablas relacionadas por medio de su llave primaria y tabla foranea.
para entender como se traeran las tablas relacionadas es importante entender la teoria de conjuntos y diagramas de venn
Gracias por la explicación teórica instructor Israel, entonces existen varios tipos de Join y dependiendo del dato que se desea consultar unos van a ser más útiles que otros.
Estoy detectando algo curioso sobre los conjuntos. Al parecer en la versiones mas recientes de MySql Workbrench no se permite insertar el registro de publicaciones en donde no tenemos ningun usuario para la clave foranea. Investigando un poco mas resulta que esto tiene sentido por que imaginense que ustedes estan haciendo el sistema de base de datos para una caja registradora de un cine y llega un cliente y dice que no quiere NIT,NIF para su factura. En este caso sospecho que debemos guardar de igual manera que el cliente no quiso un NIT. y para ello creamos un nuevo cliente de nombre “sin NIT” asi para hacer reportes podremos mostrar cuantas personas no quiesieron NIT para su factura al final del mes. Entonces cambiemos la condicion de IS NULL a Nombre=“SIN NIT”
La sentencia FROM, tiene una fuerte rama, la cuál es “join”, la cuál es la encargada de unir las tablas para conocer más a fondo los datos
La sentencia FROM, es por su parte, muy importante, ayque es la encargada de brindarnos en el query de donde vamos a extraer los datos
Teoría de conjuntos en matemáticas discretas, esto también lo pueden ver en el curso de pensamiento lógico.
Es bastante información. Además aquí solo estamos hablando de dos conjuntos (que podrían ser dos tablas).
Entiendo que se replica lo mismo para cuando hay más de 2 tablas.
Teoría de conjuntos y operación entre conjuntos. Simplemente genial! Las matemáticas definitivamente influyen en cualquier campo
La sentencia JOIN (unir, combinar) de SQL permite combinar registros de una o más tablas en una base de datos. En el Lenguaje de Consultas Estructurado (SQL) hay tres tipos de JOIN: interno, externo y cruzado. El estándar ANSI del SQL especifica cinco tipos de JOIN: INNER, LEFT OUTER, RIGHT OUTER, FULL OUTER y CROSS. Una tabla puede unirse a sí misma, produciendo una auto-combinación, SELF-JOIN.
los joins se relacionan con teoría de conjuntos y son representados por diagramas de ven
Left join traen todos los datos de A de dos tablas A y B
Rigth join trae todos los elementos de B de dos tablas A y B
tanto en left join como en rigth join se pueden intersectar o no los elementos que contienen tanto A como a B a esto
y tambien se pude cunsiderar el caso donde solo consideramos los elementos en A pero no los elementos en B
el inner join lo podemos representar como los elementos presentes tanto en A como en b
outer join en union va ser de los elementos en A y B
en diferencia simetrica excluremos la union de los elementos en A y B
Un tema de primero primaria que demuestra que lo simple es efectivo, Diagramas de Venn, a veces por querer parecer inteligente se complican las cosas innecesariamente
Muy interesante los Joins
Excelente explicación de JOIN =D
Maravilloso en la academia no lo había entendido, con esta sencilla explicación me quedo tan claro como el agua el tema de los FROM y los JOIN. ❤️
Muy interesante el uso de JOIN junto a la sentencia FROM.
Gran explicación, Israel.
es confuso, porque el titulo se llama FROM y hablan de join…
ademas join es muy amplio creo que debieron crear otra clase exclusiva en hablar del JOIN
SELECT * FROM TableA INNER JOIN TableB ON TableA.name = TableB.name
Me encanta ver como las mateticas discretas se aplican.
Con razón me decían que teoría de conjuntos es importante.
Traigo muchas esperanzas de poder comprender finalmente sobre esta sentencia. 😄
En SQL, la cláusula FROM se utiliza para especificar una o varias tablas de las cuales deseas recuperar datos. Además de la cláusula FROM, a menudo se utilizan cláusulas JOIN para combinar datos de múltiples tablas basándose en alguna condición específica. Aquí te proporcionaré información sobre cómo usar FROM y las cláusulas JOIN en SQL:
Cláusula FROM:
Ejemplo:
SELECT columna1, columna2
FROM tabla1, tabla2
WHERE tabla1.id = tabla2.id;
SQL JOINs:
- Los tipos más comunes de JOINs son INNER JOIN, LEFT JOIN (o LEFT OUTER JOIN), RIGHT JOIN (o RIGHT OUTER JOIN) y FULL JOIN (o FULL OUTER JOIN), cada uno de los cuales tiene un comportamiento diferente.
Ejemplo de INNER JOIN:
SELECT clientes.nombre, pedidos.numero_pedido
FROM clientes
INNER JOIN pedidos ON clientes.id = pedidos.id_cliente;
Ejemplo de LEFT JOIN:
SELECT estudiantes.nombre, inscripciones.curso
FROM estudiantes
LEFT JOIN inscripciones ON estudiantes.id = inscripciones.id_estudiante;
Ejemplo de RIGHT JOIN:
SELECT empleados.nombre, proyectos.nombre_proyecto
FROM empleados
RIGHT JOIN proyectos ON empleados.id = proyectos.id_empleado;
Ejemplo de FULL JOIN:
SELECT usuarios.nombre, comentarios.texto
FROM usuarios
FULL JOIN comentarios ON usuarios.id = comentarios.id_usuario;
Alias de tabla:
Ejemplo con alias de tabla:
SELECT c.nombre, p.numero_pedido
FROM clientes AS c
INNER JOIN pedidos AS p ON c.id = p.id_cliente;
Estas son algunas de las nociones básicas de cómo se utilizan las cláusulas FROM y JOIN en SQL para recuperar datos de múltiples tablas. Los JOINs son una parte esencial de la manipulación de datos en bases de datos relacionales cuando se trabaja con información distribuida en varias tablas.
Genial…!!!
La sentencia JOIN se utiliza para combinar datos de dos o más tablas relacionadas en una consulta SQL. Permite obtener información de varias tablas utilizando una condición de relación entre ellas
Excelente profesor y curso hasta el momento.
En la figura de joins, la imagen inferior izquierda la he visto como semi-join y la contraparte como anti-join
Estupenda clase del profe!!!
-- Les comparto mi consulta sql
-- lo que hago es la union de las tablas usuarios, posts, posts_etiqueta y etiquetas
-- Obtengo datos en esta consulta que son: nickname, estatus, id y nombre donde luego los explico de forma clara a traves de un alias
SELECT
u.nickname AS nombre_de_pila,
p.estatus AS estado,
pe.id AS id_post_etiquetas,
e.nombre AS nombre_etiqueta
FROM
usuarios u
INNER JOIN
posts p ON u.id = p.usuario_id
INNER JOIN
posts_etiquetas pe ON p.id = pe.post_id
INNER JOIN
etiquetas e ON pe.id = e.id;
FROM indica de donde vamos a traer los datos
JOIN esta sentencia nos ayuda a unir tablas atreves de las relaciones que se crearon como por ejemplo unir la llave primaria de una tabla con la llave foránea de otra tabla
Tipos de JOIN
Diferencia
left join
que traerá todos los datos de la tabla A estén o no estén en la tabla b, ejemplo si el usuario tenga o no tenga post nos va traer el usuario completo
otro tipo de left join es que traiga los que usuarios pero que no estén asociados al post
Right join
quiere decir que nos traiga todo lo que este en la tabla B sin importar si está o no está en la tabla A, ejemplo, tráeme todos los posts, aunque no haya ningún usuario que los haya creado (es un caso que no se permite hacer)
el otro caso de right join es que traiga todos los datos de la tabal b que no tenga ninguna asociasion con la tabla a
Intersección / inner join
es donde se encuentran los 2 diagramas que traerá los valores que están en A como en B, ejemplo, este solo traerá todos los usuarios que tenga un post asociado, si hay algún usuario que no tiene un post o viceversa este no lo traerá
Unión
Esta se encarga de traer todos los datos de las dos de a y b, ejemplo, traerá todos los usuarios que tengan o no tengan post y viceversa
Diferencia Asimétrica
Ara lo contrario de unión traerá todo lo que A no tenga asociado con B, ejemplo, traerá todos los usuarios que no estén asociados con post y viceversa
Me gustó mucho la explicación
No es necesario hacer join y unir las tablas para traer informacion de varias tablas. se puede hacer un:
SELECT person.nombre, posts. titulo
FROM person, posts.
…por ejemplo.
Es la estructura de una sentencia INNER JOIN:
SELECT u.nombre, p.titulo FROM usuarios u INNER JOIN posts p ON u,id = p.id_usuario
JOIN 1: DIFERENCIA
¿Quieres ver más aportes, preguntas y respuestas de la comunidad?