Explicando los Joins con Diagramas de Venn
Si han tenido que explicar como funcionan los joins en SQL, o han tenido dudas sobre el resultado de un query especifico, este post de Jeff Atwood les va a interesar, porque explica como funcionan los joins usando Diagramas de Venn.
Las operaciones en bases de datos relacionales son sobre conjuntos, así que esta debería ser la forma más natural de explicar este concepto, al menos a mi nunca me lo explicaron así, y hay veces que entender o escribir un query puede ser una experiencia que consume mucho tiempo y esfuerzo mental.
Esta forma de visualizar creo que es muy útil.
A los que enseñan bases de datos, ¡incorporen esto en sus clases por favor!
A continuación les dejo 2 de los ejemplos explicados por Jeff Atwood:
Tenemos 2 tablas:
Tabla A Tabla B
| id | name | id | name |
| -- | ---- | -- | ---- |
| 1 | Pirate | 1 | Rutabaga |
| 2 | Monkey | 2 | Pirate |
| 3 | Ninja | 3 | Darth Vader |
| 4 | Spaghetti | 4 | Ninja |
SELECT * FROM TableA
INNER JOIN TableB
ON TableA.name = TableB.name
| id | name | id | name |
| -- | ---- | -- | ---- |
| 1 | Pirate | 2 | Pirate |
| 3 | Ninja | 4 | Ninja |
El otro caso es mas complejo:
SELECT * FROM TableA
FULL OUTER JOIN TableB
ON TableA.name = TableB.name
WHERE TableA.id IS null
OR TableB.id IS null
| id | name | id | name |
| -- | ---- | -- | ---- |
| 2 | Monkey | null | null |
| 4 | Spaghetti | null | null |
| null | null | 1 | Rutabaga |
| null | null | 3 | Darth Vader |
Categorías
Programación0 TrackBacks
Abajo se encuentran listados enlaces a este artículo: Explicando los Joins con Diagramas de Venn.
URL de TrackBack URL para esta entrada: http://www.lnds.net/cgi-bin/mt-tb.cgi/1919


Escribir un comentario