Ver Mensaje Individual
  #4 (permalink)  
Antiguo 29/01/2010, 21:44
Avatar de HackmanC
HackmanC
 
Fecha de Ingreso: enero-2008
Ubicación: Guatemala
Mensajes: 1.817
Antigüedad: 16 años, 2 meses
Puntos: 260
Sonrisa Respuesta: problema utilizando MAX() dentro de una subconsulta

Hola,

Como mencionaba es posible que los datos esten incorrectos,

Suponiendo que $rut sea '16831161', es posible que la fecha máxima sea una que no tenga esa $rut. Me explico con un ejemplo:

'16831161', 2010-01-25
'16831162', 2010-01-26

En este caso la fecha máxima es el 26 de enero, pero pertenece a 16831162, por lo tanto el operador lógico AND, va a devolver falso. Reemplazando los valores:

Código:
SELECT lugar FROM horario_control
WHERE rut_paciente='16831161' AND fecha_control = '20100126'
Ese registro no existe en el ejemplo anterior porque la fecha máxima es de todos los registros, no solamente de la ruta '16831161'.

Posiblemente puedas probar con:

Código:
SELECT lugar, fecha_control
FROM horario_control
WHERE rut_paciente = $rut AND
fecha_control = (SELECT Max(fecha_control)
FROM horario_control WHERE rut_paciente = $rut);
Pero va a depender completamente del resultado que esperas,

Saludos,