Raúl Andrés Duque Murillo escribió: > SELECT tabla.id_parte, tabla.anno, tabla.mes, tabla.valor > FROM ( > SELECT tabla.id_parte, MAX(tabla.anno*100 + tabla.mes) AS > AnnoMes > FROM tabla > GROUP BY tabla.id_parte > ) maxtabla INNER JOIN tabla ON tabla.id_parte = maxtabla.id_parte > AND AnnoMes = (tabla.anno*100 + tabla.mes)
¿Que version usas y cual es el explain de esto? El max() debería convertirse a un indexscan + LIMIT, creo; pero solo de 8.2 en adelante. Si no lo hace automaticamente, haz la conversión a mano (order by ... limit 1) -- Alvaro Herrera http://www.amazon.com/gp/registry/3BP7BYG9PUGI8 "Hoy es el primer día del resto de mi vida" -- TIP 6: ¿Has buscado en los archivos de nuestra lista de correo? http://archives.postgresql.org/pgsql-es-ayuda