Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/11/2007, 15:33
rynkydynky
 
Fecha de Ingreso: diciembre-2006
Ubicación: Tunja
Mensajes: 177
Antigüedad: 17 años, 4 meses
Puntos: 2
Consulta Dificl

Saludos Amigos del foro, tengo una gran duda alrededor de esta consulta:

SELECT
tbl_contrato.Cod_contrato,
tbl_estado.Cod_estado,
tbl_estado.Estado,
tbl_estado_contrato.Fecha_cambio_estado
FROM
tbl_estado_contrato
INNER JOIN tbl_estado ON (tbl_estado_contrato.Cod_estado = tbl_estado.Cod_estado)
INNER JOIN tbl_contrato ON (tbl_estado_contrato.Cod_contrato = tbl_contrato.Cod_contrato)
WHERE
(tbl_contrato.Cod_contrato = 22)
GROUP BY
tbl_contrato.Cod_contrato
ORDER BY
tbl_estado_contrato.Fecha_cambio_estado DESC

La cuestión es que en la tabla estado se almacenan todos los estados y la fecha de cambio de estado de un contrato. Necesito que me salga el ultimo estado del contrato. Lo estoy intentando ordenando la fecha de cambio de estado, pero a pesar de existir dos registros en la tabla estado con codigo contrato = 22 siempre me muestra el más antiguo y no el más reciente asi:

Muestra:
Contrato = 22, fecha cambio estado = 2/3/2007, estado = vigente

en vez de:

Contrato = 22, fecha cambio estado = 5/11/2007, estado = finalizado


De antemano gracias.