INNER JOIN

INNER JOIN se utiliza para realizar lecturas en múltiples tablas. Esta lección trata de enseñarle todas las consideraciones a tener en cuenta a la hora de implementar una sentencia de lectura SELECT con INNER JOIN.

  • Sintaxis

… [(] {dbtab_left [AS tabalias_left]} | join
{[INNER] JOIN}|
{dbtab_right [AS tabalias_right] ON join_cond} [)] …  .

  • Efecto

La sintaxis de join es una expresión de unión recursiva. Una expresión join se compone de un lado izquierdo y un lado derecho, unidos utilizando cualquiera [INNER] JOIN o LEFT [OUTER] JOIN. Una expresión de unión puede ser una unión interna (INNER) o una unión externa (LEFT OUTER). Cada expresión de unión se puede encerrar entre paréntesis. Cuando se utiliza una expresión de unión, la instrucción SELECT no utiliza el buffer de SAP.
En el lado izquierdo, se puede especificar una tabla de base de datos transparente, una vista dbtab_left u otra combinación de expresión de unión. En el lado derecho, se debe especificar una sola tabla de base de datos transparente o una vista dbtab_right, junto con las condiciones de unión join_cond después de ON. De esta manera, es posible especificar un máximo de 24 expresiones de unión después de FROM; estas expresiones unen 25 tablas de base de datos transparentes o vistas conjuntamente. Las tablas agrupadas y de clúster no se pueden unir mediante expresiones de combinación.

  • Aplicación práctica

En la lógica del código fuente realizamos una lectura con INNER JOIN que obtenga información de las siguientes columnas y tablas de base de datos:
Declare un tipo local en base a las columnas y una tabla interna para obtener los registros en la capa de aplicación.

  1. Implementamos el código fuente.
  2. Ejecutamos el programa.
  • Notas

Si las columnas del lado derecho se especifican después de la adición ORDER BY, el orden de clasificación en el caso de valores nulos es determinado por el sistema de base de datos.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *