![]() |
Consulta y filtro por cantidad
Tengo una tabla con el detalle de venta de ciertos productos, asi:
TABLA A --------- ID_PRODUCTO DESCRIPCION PRECIO CANTIDAD FECHA EMPLEADO Yo lo que quiero hacer, es mostrar las ultimas 5 ventas de cada producto, como podria hacerlo? Lo que no se, es como limitar la consulto a 5 ventas de cada producto, o las que yo quiera ver ya sean 2 de cada uno, o las ultimas 10. Desde ya muchas gracias |
¿Qué motor de base de datos usas? En Firebird se utiliza la cláusula FIRST, en MySQL se usa LIMIT, en SQL Server se usa TOP...
Para mostrar las últimas 5 ventas ordena por fecha de forma descendente (ORDER BY FECHA DESC). |
Cita:
|
En una sola consulta no se me ocurre nada, pero sí una alternativa aunque es un poco más engorrosa. Se trata de hacer un procedimiento almacenado.
El funcionamiento sería con un cursor, haciendo una consulta que seleccione cada producto diferente lo almacenarías en una variable y luego harías un INSERT combinado con SELECT en una tabla temporal de los 5 primeros registros que tienen por descripción el producto por el que vamos (@V_DESCRIPCION) Y por último una vez ejecutado el SP harías un simple SELECT * de TABLA_TEMPORAL. Seguramente haya errores de sintaxis y tal pero creo que más o menos te haces una idea. |
La franja horaria es GMT +2. Ahora son las 04:24:49. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi