Diferencia entre JOIN y INNER JOIN
Ambas uniones me darán los mismos resultados:
SELECT * FROM table JOIN otherTable ON table.ID = otherTable.FK
vs
SELECT * FROM table INNER JOIN otherTable ON table.ID = otherTable.FK
¿Hay alguna diferencia entre las declaraciones en el rendimiento o de otra manera?
¿Difiere entre las diferentes implementaciones de SQL?
922
3
Son funcionalmente equivalentes, pero
INNER JOIN
puede ser un poco más claro de leer, especialmente si la consulta tiene otros tipos de join (por ejemplo,LEFT
oRIGHT
oCROSS
) incluidos en ella.No, no hay diferencia, puro azúcar sintáctico.
Del mismo modo, con los
OUTER JOINs
, la palabraOUTER
es opcional. Es la palabra claveIzquierda
oDerecha
la que convierte alJOIN
en unOUTER JOIN
.Sin embargo, por alguna razón, siempre utilizo
"OUTER" como en
LEFT OUTER JOINy nunca
LEFT JOIN, pero nunca utilizo
INNER JOIN, sino que simplemente utilizo
"JOIN":