5 messages in com.mysql.lists.mysql-esRe: Problema con select
FromSent OnAttachments
Grover Campos A.13 Sep 2006 15:00 
Leandro Oliveri14 Sep 2006 07:59 
Marcelo14 Sep 2006 08:50 
Francisco Javier Ruiz Lopez14 Sep 2006 08:51 
Grover Campos A.14 Sep 2006 09:34 
Subject:Re: Problema con select
From:Leandro Oliveri (l.m.@gmail.com)
Date:09/14/2006 07:59:11 AM
List:com.mysql.lists.mysql-es

Hola Gorver deberias una consulta parecida a estar:

SELECT codigo_entrada, stock, fecha_vencimiento FROM stock_de_bodega WHERE codigo_bodega IN ( 1, 2, 3, 4,5 ) AND codigo_producto = 5 ORDER BY fecha_vencimiento DESC, codigo_entrada ASC

Donde codigo_bodega IN ( ) seteas el conjunto de valores que necesitas, si los tenes todos juntos en un intervalor podrias usar 'codigo_bodega BETWEEN (min AND max)'.

Espero que aclare tus dudas.

Saludos.

On 9/13/06, Grover Campos A. <gcam@ing.puc.cl> wrote:

Hola lista:

Espero que todos estén bien y me puedan dar una mano con este problemilla que tengo, que posiblemente es recurrente, pero bueno allí la mando.

Resulta que tengo una tabla de stocks donde guardo la información de entrada, stock y fecha de vencimiento de una lista de productos. Para hallar las entradas que tuvo un producto determinado realizo la siguiente consulta:

SELECT codigo_entrada, stock, fecha_vencimiento

FROM stock_de_bodega

WHERE codigo_bodega = 5

AND codigo_producto = 5

ORDER BY fecha_vencimiento DESC, codigo_entrada ASC

La consulta me devuelve por ejemplo:

+----------------+-------+-------------------+

| codigo_entrada | stock | fecha_vencimiento |

+----------------+-------+-------------------+

| 10 | 2 | 2007-08-11 |

| 4 | 2 | 2007-09-15 |

| 29 | 23 | 2007-09-15 |

| 15 | 23 | 2007-10-10 |

+----------------+-------+-------------------+

El problema es el siguiente: Necesito sacar de la bodega 24 productos, entonces el resultado debería ser las entradas 10, 4 y 29, puesto que los stocks de estas entradas en ese orden satisfacirían los 24 productos que necesito (necesitaría los 2 de la entrada 10, los 2 de la entrada 4 y 20 productos de la entrada 29: 2 + 2 + 20 = 24).

¿Cómo podría hallar eso en una consulta (o subconsultas) SQL? ¿Es posible o estoy pidiendo mucho?

Espero haberme dejado entender y me puedan dar una mano, desde ya muchas gracias.

Saludos

---------------------------------------------------------------

Grover M. Campos Ancajima

Ingeniero de Desarrollo

DictUC - Pontificia Universidad Católica de Chile