Академический Документы
Профессиональный Документы
Культура Документы
Pensé que el post de Ligaya Turmelle sobre SQL joins era una genial introducción para los desarrolladores
primerizos. Dado que los SQL joins están basados fundamentalmente en conjuntos relacionados, el uso de
diagramas de Venn para explicarlo parece lo más acertado. De todas formas, igual que los comentaristas de su
post, opino que sus diagramas de Venn no encajaban con la sintaxis de SQL join en mis pruebas.
Aún así me encanta el concepto, así que veamos si podemos hacerlo funcionar. Supongamos que tenemos las
dos siguientes tablas. La tabla A está a la izquierda, y la tabla B está a la derecha. Las rellenaremos con cuatro
registros cada una.
Ahora unamos estas dos tablas por el campo nombre de algunas formas distintas, y veamos si podemos obtener
unas representaciones conceptuales con los ingeniosos diagramas de Venn.
Inner join
Sólo produce los registros que coinciden en las dos tablas A y B.
Para producir el conjunto de registros únicos de la tabla A y la tabla B, usamos el mismo Full Outer Join, y
luego excluimos los registros que no queremos de los dos lados mediante una cláusula Where.
También hay un cross join, el cuál no puede ser expresado con un diagrama de Venn:
Esto une “todo con todo”, dando como resultado 4 x 4 = 16 filas, muchas más de las que teníamos en los
conjuntos originales. Si haces unos simples cálculos, puedes ver por qué es un Join muy peligroso de ejecutar
en tablas grandes.