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

3 mayores de cada uno

Estas en el tema de 3 mayores de cada uno en el foro de Mysql en Foros del Web. hOLA BUEN DIA tengo esta consulta SELECT tienda,proveedor , incidencia FROM tbl_51_incidencias, tbl_51_detalleincidencias WHERE tbl_51_incidencias.idincidencia = tbl_51_detalleincidencias.idincidencia and tbl_51_detalleincidencias.incidencia in (321,323,325,327,329) and k.fecha BETWEEN DATE_ADD(CURDATE(), ...
  #1 (permalink)  
Antiguo 11/08/2016, 06:56
Avatar de dorde  
Fecha de Ingreso: diciembre-2003
Mensajes: 145
Antigüedad: 20 años, 4 meses
Puntos: 7
Pregunta 3 mayores de cada uno

hOLA BUEN DIA

tengo esta consulta

SELECT tienda,proveedor , incidencia
FROM tbl_51_incidencias, tbl_51_detalleincidencias
WHERE tbl_51_incidencias.idincidencia = tbl_51_detalleincidencias.idincidencia
and tbl_51_detalleincidencias.incidencia in (321,323,325,327,329)
and k.fecha BETWEEN DATE_ADD(CURDATE(), INTERVAL -14 DAY) and curdate() and k.proveedor = p.id

son muchas tiendas y muchos proveedores, necesito tener los 3 mayores ( incidencias) de cada proveedor por tienda.

tienda | proveedor | inci|
1 | 1 | 3 |
1 | 8 | 2 |
1 | 4 | 1 |
2 | 1 | 8 |
2 | 2 | 6 |
2 | 4 | 3 |
3 | 6 | 2 |
3 | 7 | 2 |
3 | 8 | 2 |

MUCHAS MUCHAS GRACIAS!!!
__________________
Pero si alguno de vosotros se ve falto de sabiduría, que la pida a Dios, el cual da a todos abundantemente y sin reproche, y le será dada. Pero que pida con fe, sin dudar

Santiago 1.5-6
  #2 (permalink)  
Antiguo 11/08/2016, 08:30
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: 3 mayores de cada uno

Hola dorde:

En primer lugar, NO REPITAS POSTS... si lees las políticas de foro esto está absolutamente prohibido y puede acarrear sanciones que van desde simplemente eliminar el post duplicado hasta bloquear tu cuenta. mucho ojo con eso.

Ahora bien, volviendo a tu pregunta, hay varias formas en las que puedes resolver tu problema, una sería emulando a la función ROW_NUMBER que tienen otros DBMS para numerar el número de incidencias de los proveedores y despues simplemente filtrar los ROW_NUMBER menores a 3, checa esta liga:

http://www.artfulsoftware.com/infotr...ip.php?id=1098

Ahí aparecen varias técnicas para simular este valor. Haz la prueba y nos comentas.

Saludos
Leo.
  #3 (permalink)  
Antiguo 11/08/2016, 17:42
Avatar de dorde  
Fecha de Ingreso: diciembre-2003
Mensajes: 145
Antigüedad: 20 años, 4 meses
Puntos: 7
Respuesta: 3 mayores de cada uno

se repitio por error, y no pude eliminarlo, tengo 12 años y 8 meses en este foro, realmente fue un problema de que no pude borrar el post repetido...graciuas por tu observacion

De las soluciones, muchas gracias las probare, aunque por lo pronto resolvi en tema de otra manera, ...pero es algo que retomare a brevedad
__________________
Pero si alguno de vosotros se ve falto de sabiduría, que la pida a Dios, el cual da a todos abundantemente y sin reproche, y le será dada. Pero que pida con fe, sin dudar

Santiago 1.5-6

Etiquetas: cada, fecha, select
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 19:32.