Es cierto que algunas bases de datos reconocen la palabra clave OUTER. Algunos no. Donde se reconoce, por lo general es palabra clave opcional. Casi siempre, FULL JOIN y FULL OUTER JOIN hacen exactamente lo mismo. (No puedo pensar en un ejemplo en el que no lo hacen. ¿Alguien más puede pensar en uno?)
Esto puede dejarte preguntándote, "¿Por qué sería incluso una palabra clave si no tiene ningún significado?" La respuesta se reduce al estilo de programación.
En los viejos tiempos, los programadores se esforzaron por hacer su código lo más compacto posible. Cada personaje significaba un tiempo de procesamiento más largo. Usamos variables de 1, 2 y 3 letras. Usamos años de 2 dígitos. Eliminamos todo el espacio en blanco innecesario. Algunas personas todavía programan de esa manera. Ya no se trata de procesar el tiempo. Se trata más de una codificación rápida.
Los programadores modernos están aprendiendo a usar variables más descriptivas y poner más comentarios y documentación en sus códigos. Al usar palabras adicionales como OUTER, asegúrese de que otras personas que leen el código tengan más facilidad para entenderlo. Habrá menos ambigüedad. Este estilo es mucho más legible y más amable para las personas en el futuro que tendrán que mantener ese código.
Sí, ambas consultas me dan los mismos resultados en SQL Server 2008 R2. – CptSupermrkt