Ver Mensaje Individual
  #1 (permalink)  
Antiguo 14/04/2016, 10:10
bconline
 
Fecha de Ingreso: abril-2016
Ubicación: Sevilla
Mensajes: 3
Antigüedad: 8 años
Puntos: 0
Consulta rara MySQL para lograr una lista

Bueno chicos, me considero un nivel intermedio en SQL pero esto que quiero hacer me está ganando y a ver si hay alguien que me ilumine. Por cierto, soy nuevo y os saludo a todos y gracias por responderme (cuando lo hagáis, jeje).

Bueno al lío, las tablas son muy grandes y complicadas pero resumiré con 2 o 3 campos lo que pretendo.

Tengo 1 tabla - productos (almacena los datos de los prodcutos)

Código C:
Ver original
  1. id     nombre
  2. 1     producto 1
  3. 2     producto 2
  4. 3     producto 3

Luego tengo otra tabla que guarda el stock de estos productos en diferentes almacenes, los almacenes puede crearse en la aplicación por lo que en un momento puede que haya 2 almacenes, en otro 5, etc, esta tabla muestra esta estructura (resumida claro)

Tabla 2 - stock
Código C:
Ver original
  1. id_product |  id_warehouse | stock
  2. 1                     1                 5
  3. 2                     1                 3
  4. 3                     1                 8
  5. 1                     2                 2
  6. 3                     2                 9
  7. 2                     3                 7
  8. 1                     3                 6

Bien, dado que los almacenes pueden ser uno o varios par aun mismo producto, aquí viene la pregunta, "qué consulta tendría que hacer yo para obtener el resultado que pongo a continuación"

Código C:
Ver original
  1. id_product   |   stock_warehouse_1 | stock_warehouse_2 | stock_warehouse_3 | stock_warehouse_n
  2. 1                5                   2                      3                              ...
  3. 2                3                  null                   3
  4. 3                8                   9                     null
La dificultad radica que el table resultante debe "crecer" en columnas dependiendo de la cantidad de "id_warehouses" que contenga la tabla de stock, la idea es ver de un tirón el stock que hay de cada producto en cada almacén.

Igual esto que estoy proponiendo es una absoluta tontería y no tiene solución, a ver, yo se hacerlo consultando y enlazando ambas tablas y luego desde código llevarlo todo a un datagrid, pero con 5 registros va perfecto, pero con 5000 ya la cosa se ralentiza un poco, y lo ideal sería poder asociar al datasource del datagrid una consulta que ya venga con dicha estructura.

Gracias a todos.