Ver Mensaje Individual
  #3 (permalink)  
Antiguo 27/07/2014, 16:11
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 9 meses
Puntos: 2658
Respuesta: Obtener primer registro de cada grupo

Poner el agrupamiento primero no funcionará si el orden ascendente es distinto.
MySQL agrupa por el primer registro encontrado, usualmente basado en PK, que en este caso sería id_publicidad, y que aplicará en forma ascendente.
Para que tome el mayor de todos, deberías ordenar primero y luego agrupar, pero no puedes hacerlo en la misma consulta porque el ORDER BY va siempre después de GROUP BY.
La solución correcta sería mas o menos:
Código MySQL:
Ver original
  1. SELECT id_publicidad, permanencia, ubicacion
  2.     (SELECT id_publicidad, permanencia, ubicacion
  3.     FROM publicidades
  4.     ORDER BY id_publicidad DESC, permanencia) Tabla
  5. GROUP BY permanencia, ubicación;

Por cierto, esta es una pregunta recurrente. Hemos dado esta solución infinidad de veces.
Te recomiendo usar el buscador del foro para estas cosas básicas.

Aqui encontrarás otras: http://www.forosdelweb.com/f86/herra...3/#post4414201
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)