Visual Basic - URGENTE!! AYUDA CON SQL

Life is soft - evento anual de software empresarial
 
Vista:

URGENTE!! AYUDA CON SQL

Publicado por ramon (67 intervenciones) el 18/11/2002 18:07:22
Necesito ayuda con una consulta. De la siguiente tabla necesito obtener el registro con el suplemento y el movimiento mas alto de un numero d poliza que le paso a la consulta, por ejemplo: si le paso como parametro el numero de poliza 1, deberia devolverme poliza=1, ramo=89000, suplemento=3, movimiento=3, cia=12, gestora=33.
Pero me devuelve los dos registros que tienen el movimiento=3. A contiunacion pongo la tabla y la consulta que tengo.

NUMPOLIZA RAMO SUPLEMENTO MOVIMIENTO CIA GESTORA
1 89000 0 0 12 33
1 89000 1 0 12 33
1 89000 1 3 12 33
1 89000 2 1 12 33
1 89000 3 1 12 33
1 89000 3 3 12 33

y la consulta es:

SELECT *
FROM POLIZAS
WHERE NUMPOLIZA=[VBcodigo] AND movimiento=(SELECT MAX(movimiento)
FROM POLIZAS WHERE NUMPOLIZA=[VBcodigo] and suplemento=(SELECT MAX(suplemento) FROM
POLIZAS WHERE NUMPOLIZA=[VBcodigo]));


si alguien me puede decir que esta mal en la consulta.

gracias

Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

RE:URGENTE!! AYUDA CON SQL

Publicado por Juanma (7 intervenciones) el 18/11/2002 19:28:15
SELECT Poliza, Ramo, LAST(Suplemento), LAST(Movimiento), Cia, Gestora
FROM Polizas
Where Poliza=1
GROUP BY Poliza, Ramo, Cia, Gestora
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar

RE:URGENTE!! AYUDA CON SQL

Publicado por Fernando (7 intervenciones) el 19/11/2002 07:16:30
La consulta que has puesto es lomismo que poner
SELECT *
FROM POLIZAS
WHERE NUMPOLIZA=[VBcodigo] AND movimiento=3
Lo que te han contestado está muy bien siempre que coincida que un registro tenga los maximos valores en suplemento y movimiento (que es este caso). Si no te devolvería el valor máximo de cada campo aunque no coincidieran en el mismo registro. Si es eso lo que quieres bien, si no tienes que priorizar que prefieres antes: movimiento mas alto o suplemento mas alto.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar