Hola que tal les hago una consulta. Tengo una tabla Compras:
CompraId int pk not null
Producto1 int
Producto2 int
Producto3 int
Producto4 int
Producto5 int
Necesito crear un procedimiento almacenado con un select que lea cada registro y actue de la siguiente forma: si Producto1 tiene valor me devuelva el valor del mismo acompañado de la CompraId, si Producto2 es null no hace nada, si Producto3 tiene valor me devuelve el valor del mismo repitiendo el valor de CompraId y asi hasta llegar a Producto5 donde pasa a leer el proximo registro. La consulta quedaria algo asi:
Producto -- CompraId
0000001 -- 0000002
0000005 -- 0000002
0000007 -- 0000003
0000001 -- 0000004
0000004 -- 0000004
0000022 -- 0000004
Lo normal seria crear una tabla relacional pero para este caso puntual eso no es posible, gracias de antemano.