¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Cómo usar INNER JOIN en SQL con un ejemplo de programa

  • Creado 01/03/2024
  • Modificado 01/03/2024
  • 82 Vistas
0
Cargando...

Dar sintaxis de inner join. con programa de ejemplo

Pedro Pascal
Se unió el 07/03/2018
Pinterest
Telegram
Linkedin
Whatsapp

4 Respuestas

0
Cargando...

Cuando varias tablas SAP están unidas lógicamente, siempre es recomendable utilizar un inner join para leer los datos de ellas. Esto reduce la carga en la red.

Tomemos un ejemplo de 2 tablas, zairln y zflight. La tabla zairln tiene el campo airln, que es el código de la aerolínea y el campo lnnam, que es el nombre de la aerolínea. La tabla zflight tiene el campo airln, el código de la aerolínea y otros campos que contienen los detalles de los vuelos que opera una aerolínea.

Dado que estas 2 tablas están unidas lógicamente por el campo airln, es recomendable utilizar el inner join.

Seleccionar a airln a lnnam b fligh b cntry en la tabla int_airdet

Desde zairln como a inner join zflight como b en a airln = b airln.

Para restringir los datos según el criterio de selección, se puede agregar una cláusula where al inner join anterior.

Digamos que tenemos 2 tablas VBAP y VBAK. Son las siguientes.

Contenido de VBAK.

VBELN ERDAT ERNAM AUART

1001 20021011 10 12

1002 20021012 12 12

1003 20021011 13 14

Contenido de VBAP.

VBELN POSNR MATNR MATKL

1001 10 12 12

1002 13 12 14

1002 10 1 1

Ahora tenemos VBELN como clave para estas dos tablas. Por lo tanto, escribimos la consulta de selección como

SELECT vbak~vbeln

vbak~erdat

vbak~ernam

vbak~auart

vbap~posnr

vbap~matnr

vbap~matkl

INTO TABLE tbl_values

FROM vbak JOIN vbap ON vbap vbeln = vbak vbeln.

La salida será

VBELN ERDAT ERNAM AUART POSNR MATNR MATKL

1001 20021011 10 12 10 12 12

1002 20021012 12 12 13 12 14

1002 20021012 12 12 10 1 1

Saludos,

Srinivas

<b>* recompensa por respuestas útiles *</b>

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Hola,

SINTAXIS:

Seleccionar tab1 campo1 tab2 campo2

en la tabla t_table

desde tab1

unirse a tab2

en tab1 campo1 = tab2 campo2

donde campo1 en s_field1.

copia y pega el siguiente programa..

PARÁMETROS: p_cityfr TIPO spfli-cityfrom,

p_cityto TIPO spfli-cityto.

DATA: INICIO DE wa,

fldate TIPO sflight-fldate,

carrname TIPO scarr-carrname,

connid TIPO spfli-connid,

FIN DE wa.

DATA itab COMO TABLA ORDENADA DE wa

CON CLAVE ÚNICA fldate carrname connid.

SELECCIONAR c carrname p connid f~fldate

ENTRADA CAMPOS CORRESPONDIENTES DE LA TABLA itab

DESDE ( ( scarr COMO c

UNIR spfli COMO p EN p carrid = c carrid

Y p~cityfrom = p_cityfr

Y p~cityto = p_cityto )

UNIR sflight COMO f EN f carrid = p carrid

Y f connid = p connid ).

LOOP EN itab EN wa.

ESCRIBIR: / wa-fldate, wa-carrname, wa-connid.

FIN LOOP.

recompensas si es útil,

saludos,

'Nazeer'

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

encuentra la sintaxis en TCODE ABAPDOCU.

S@meer

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019
0
Cargando...

Hola,

SINTAXIS:

Selecciona tab1 campo1 tab2 campo2

en la tabla t_table

desde tab1

unirse a tab2

en tab1 campo1 = tab2 campo2

donde campo1 en s_campo1.

copia y pega el siguiente programa..

PARÁMETROS: p_cityfr TYPE spfli-cityfrom,

p_cityto TYPE spfli-cityto.

DATA: BEGIN OF wa,

fldate TYPE sflight-fldate,

carrname TYPE scarr-carrname,

connid TYPE spfli-connid,

END OF wa.

DATA itab LIKE SORTED TABLE OF wa

WITH UNIQUE KEY fldate carrname connid.

SELECT c carrname p connid f~fldate

INTO CORRESPONDING FIELDS OF TABLE itab

FROM ( ( scarr AS c

INNER JOIN spfli AS p ON p carrid = c carrid

AND p~cityfrom = p_cityfr

AND p~cityto = p_cityto )

INNER JOIN sflight AS f ON f carrid = p carrid

AND f connid = p connid ).

LOOP AT itab INTO wa.

WRITE: / wa-fldate, wa-carrname, wa-connid.

ENDLOOP.

Recompensas si es útil,

Saludos,

'Nazeer'

Respondido el 15/04/2024
LUCIANO RIOJA GHIOTTO
Se unió el 13/07/2019

contacto@primeinstitute.com

(+51) 1641 9379
(+57) 1489 6964

© 2024 Copyright. Todos los derechos reservados.

Desarrollado por Prime Institute

¡Hola! Soy Diana, asesora académica de Prime Institute, indícame en que curso estas interesado, saludos!
Hola ¿Puedo ayudarte?