Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General »

Duda consulta

Estas en el tema de Duda consulta en el foro de Bases de Datos General en Foros del Web. Estoy haciendo un pequeño trabajillo en Access(no por gusto) pero me quedado atrancado en una consulta Tengo una tabla de ciudades con el id, el ...
  #1 (permalink)  
Antiguo 24/01/2006, 17:59
 
Fecha de Ingreso: julio-2005
Ubicación: España
Mensajes: 91
Antigüedad: 18 años, 9 meses
Puntos: 0
Pregunta Duda consulta

Estoy haciendo un pequeño trabajillo en Access(no por gusto) pero me quedado atrancado en una consulta

Tengo una tabla de ciudades con el id, el nombre, un comentario y una fecha con los siguientes datos de ejemplo

id----nombre-----comentario-----fecha
1----sevilla--------uno---------01/01/2005
2----barcelona-----uno--------02/01/2005
3----sevilla--------dos--------02/02/2005
4----alicante------uno---------03/02/2005
5----sevilla--------tres--------02/03/2005
6----barcelona-----dos---------16/03/2005

Y quiero que para una fecha determinada me muestre el nombre y el ultimo comentario que se añadio para cada ciudad antes de una fecha dada. por ejemplo, para el 01/03/2005 deberia de mostrar

nombre----comentario----fecha
alicante-----uno---------03/02/2005
barcelona-----uno-------02/01/2005
sevilla-------dos---------02/02/2005

La consulta que tengo es esta:
Código:
SELECT ciudades.nombre, ciudades.comentario, ciudades.fecha
FROM ciudades
GROUP BY ciudades.comentario, ciudades.fecha, ciudades.nombre
HAVING (((ciudades.fecha)<=#3/1/2005#))
ORDER BY ciudades.nombre;
Con esa consulta obtengo lo siguiente:

nombre----comentario----fecha
alicante-----uno---------03/02/2005
barcelona-----uno-------02/01/2005
sevilla-------dos---------02/02/2005
sevilla-------uno---------01/01/2005

¿Como hago para que me muestre solo un registro por ciudad que sea el de mayor fecha menor a la fecha dada ?
  #2 (permalink)  
Antiguo 25/01/2006, 07:50
Avatar de deadlykyo  
Fecha de Ingreso: noviembre-2005
Ubicación: Cbba - Bolivia
Mensajes: 747
Antigüedad: 18 años, 5 meses
Puntos: 5
podrias intentar algo asi, si en tu group by lo agrupas solo por nombre de ciudad
Código PHP:
SELECT ciudades.nombreciudades.comentariociudades.fecha
FROM ciudades
GROUP BY ciudades
.nombre
HAVING 
(((ciudades.fecha)<=#3/1/2005#))
ORDER BY ciudades.nombre
cya
  #3 (permalink)  
Antiguo 25/01/2006, 10:42
 
Fecha de Ingreso: julio-2005
Ubicación: España
Mensajes: 91
Antigüedad: 18 años, 9 meses
Puntos: 0
Ya intente poner en el group by solo el nombre, pero entonces no me deja en el select poner el comentario y la fecha
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 16:23.