Ver Mensaje Individual
  #3  
Viejo 07/02/08, 08:19:03
emilio.acuna emilio.acuna is offline
Junior Member
 
Fecha de Ingreso: feb 2008
Mensajes: 2
INNER JOIN y FUNCION MAX

Hola, tengo una duda muy parecida como esta de nuestro colega r. velasco.

Tengo un select con un inner join y una funcion max, ocorre que es necesario coger una tabla del diccionario que encontrase asi:

Ejemplo.

Coche Aņo
01 2008
01 2005
02 2000
02 2001
03 1997
03 1995

La funcion MAX deberia traer todos los coches cuyo aņo sea maior, de esta forma:

Coche (Campo1) Aņo (Campo2)
01 2008
02 2000
03 1997

Esto es mi select:

SELECT
tabla1~Campo1 tabla1~Campo3 tabla1~Campo4
tabla1~Campo5 tabla1~Campo6 tabla2~Campo7
tabla2~Campo8 tabla2~Campo9 tabla2~Campo2
INTO
(wa_1-Campo1, wa_1-Campo3, wa_1-Campo4, wa_1-Campo5,
wa_1-Campo6, wa_1-Campo7, wa_1-Campo8, wa_1-Campo9,
wa_1-Campo2)
FROM tabla1 INNER JOIN tabla2 ON
tabla1~Campo1 = tabla2~Campo1 AND
tabla1~Campo3 = tabla2~Campo3 AND
tabla1~Campo4 = tabla2~Campo4
WHERE
tabla1~Campo5 IN s_Campo5 AND tabla1~Campo1 IN s_Campo1 AND
tabla2~Campo10 = p_Campo10 AND
tabla2~Campo2 = ( SELECT MAX( tabla2~Campo2 ) FROM tabla2 )
GROUP BY
tabla1~Campo1 tabla2~Campo9 tabla2~Campo8 tabla2~Campo7
tabla1~Campo6 tabla1~Campo5 tabla1~Campo4
tabla1~Campo3 tabla2~Campo2
ORDER BY
tabla1~Campo1.

APPEND wa_1 TO itab_1.

ENDSELECT.

No lo se que ocurre pues esta saliendo solo el coche leido por
primero (01 2008). No esta leyendo el cambio de coche.

Espero que alguien pueda ayudarme.

Gracias por adelantado.

Emilio Acuņa
Responder Con Cita