Ver Mensaje Individual
  #1 (permalink)  
Antiguo 11/03/2012, 21:54
nosoul
 
Fecha de Ingreso: marzo-2012
Mensajes: 9
Antigüedad: 12 años, 8 meses
Puntos: 0
Pregunta [Ayuda][Mysql][Avanzado] Registos unicos y columnas calculadas

Hola, disculpen.
tengo una consulta que me esta rompiendo la cabeza.
Resulta que tengo unos registros
con un codigo, tamaño,id y nombre.
Nesecito por medio de una consulta restarle el tamaño por uno ingresado y que me devuelva el resultado que mas se acerque a otro valor tambien ingresado(en el ejemplo es 200), ademas nesecito que los codigos no se repitan, es decir me devuelva el mas aproximado por codigo.
El problema es que me devuelve bien la diferencia pero no logro que me devuelva solo 1 por codigo.

RESUMIDO SERIA:
para cada código, el id correspondiente para el registro con menor diferencia


Código PHP:
select Nombrecodigo, (tamaño-400) as diferencia
from objetos
having diferencia
<= 200
order by diferencia asc 
Lo que esta consulta me devuelve es:
Id-----Nombre---Codigo---Diferencia
5-----Pelota1------100------ 30
3-----Pelota2------100------40
2-----Carpa1-------200------45
1-----Pelota3------100------ 60


Y lo que necesito es que me devuelva:

Id-----Nombre -----Codigo ---Diferencia
5-----Pelota1 ------100---------30
2-----Carpa1------- 200---------45


Distinct y group by codigo no me estan funcionando.
El group me esta devolviendo

Id-----Nombre -----Codigo ---Diferencia
1-----Pelota3 ------100---------60
2-----Carpa1------- 200---------45


Agradesco toda su ayuda!

Última edición por nosoul; 11/03/2012 a las 22:15