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

group by o distinct duda

Estas en el tema de group by o distinct duda en el foro de Mysql en Foros del Web. hola a todos tengo la siguiente consulta Código: SELECT IdEvaluacion, proveedorinsumo.IdProveedor FROM proveedorinsumo LEFT JOIN proveedorevaluacionmp ON proveedorinsumo.IdProveedor = proveedorevaluacionmp.IdProveedor ORDER BY IdEvaluacion DESC La ...
  #1 (permalink)  
Antiguo 06/05/2010, 16:57
 
Fecha de Ingreso: junio-2008
Ubicación: Colombia
Mensajes: 207
Antigüedad: 15 años, 10 meses
Puntos: 12
group by o distinct duda

hola a todos tengo la siguiente consulta

Código:
SELECT IdEvaluacion, proveedorinsumo.IdProveedor
FROM proveedorinsumo
LEFT JOIN proveedorevaluacionmp
ON proveedorinsumo.IdProveedor = proveedorevaluacionmp.IdProveedor
ORDER BY IdEvaluacion DESC
La cual me arroja estos registros

Código:
14	890
13 	890
12	900
11	860
10	890
9	901
8	891
Lo que quiero es que los IdProveedores (890, 900..) me aparezcan solo una vez, ya probe con SELECT DISTINCT pero me sale igual, prové con el GROUP BY IdProveedor y me arroja lo siguiente:

Código:
12	900
11	860
10	890 <--- me aparece la primera ocurrencia
9	901
8	891
pero el problema es que en el caso del IdProveedor 890 me muestra el IdEvaluacion 10, pero necesito que aparezca el ultimo registro de cada IdProveedor, en este caso seria el 14, pero no se como hacerlo.

Cualquier ayuda gracias de antemano
  #2 (permalink)  
Antiguo 07/05/2010, 10:59
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años
Puntos: 300
Respuesta: group by o distinct duda

Prueba esto:

SELECT t1.IdEvaluacion, t1.IdProveedor FROM (SELECT IdEvaluacion, proveedorinsumo.IdProveedor IdProveedor
FROM proveedorinsumo
LEFT JOIN proveedorevaluacionmp
ON proveedorinsumo.IdProveedor = proveedorevaluacionmp.IdProveedor
ORDER BY IdEvaluacion DESC)t1 GROUP BY t1.IdProveedor

Etiquetas: distinct, group
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 20:25.