¡Caminando hacia el éxito!

Aprende en Comunidad

Avalados por :

Cómo aplicar JOIN con subconsulta en ABAP: Guía paso a paso

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

Hola,

Soy muy nuevo en ABAP.

¿Cómo resolver la siguiente situación en ABAP?

http://stackoverflow.com/questions/612231/how-can-i-select-rows-with-maxcolumn-value-distinct-by-ano...

En contraste, ¿cómo aplicar el siguiente código mysql (solución en el tema anterior) en ABAP?

SELECT tt .*
FROM topten tt
INNER JOIN
(
SELECT home , MAX ( datetime ) AS MaxDateTime
FROM topten
GROUP BY home
) groupedtt ON tt . home = groupedtt . home AND tt . datetime = groupedtt . MaxDateTime

Espero que me ayudes con estas situaciones:

- cómo seleccionar columnas que NO están en la cláusula GROUP BY

- cómo usar JOIN con subconsulta

Tu ayuda será muy apreciada, gracias

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

4 Respuestas

0
Cargando...

Hola,

Prueba esto

SELECT DISTINCT *

INTO TABLE <itab>
FROM topten
WHERE datetime IN ( SELECT MAX ( datetime ) FROM topten GROUP BY home ) .

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

Gracias por tu respuesta,

pero lo que quería decir es cómo unir una tabla con una subconsulta (NO otra tabla) tal como se mencionó anteriormente:

.... JOIN (SELECT ..... FROM ....) ON ...

¿Es posible en ABAP?

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

Hola,

Únete

Se utiliza para unir dos tablas de BASE DE DATOS

que tienen algunos campos COMUNES.

Únete

SELECT a~pernr a~begda a~endda a~branc b~nachn b~vorna

FROM pa0023 as a

INNER JOIN pa0002 as b

ON a_pernr = b~pernr

INTO TABLE ifinal

WHERE a~pernr IN ( select pernr from pa0023

where aedtm = p_aedtm and

uname ne 'KA51151'

por favor, revisa este enlace http://help.sap.com/saphelp_47x200/helpdata/en/dc/dc7614099b11d295320000e8353423/frameset.htm

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

Prueba

SELECT DISTINCT * INTO TABLE itab   FROM topten AS a   WHERE NOT EXISTS ( SELECT * FROM topten AS b WHERE b~home = a~home AND b~datetime > a~datetime ).
o
 SELECT DISTINCT * INTO TABLE itab   FROM topten AS a   WHERE a~datetime IN ( SELECT MAX( b~datetime ) FROM topten AS b WHERE b~home = a~home ).

(¿O podrías explicar tu código de MySQL?)

Saludos,

Raymond

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?