Estimados tengo una lista de registro la cual debo resumir por valores consecutivos, en este caso, en el numero de caja el resultado que tengo actual de mi sql es:
lote_completo |cod_guia|caja inicial |caja final |count|des_prod 150731012521301|42012 |50434 |50507 |66 |MERLUZA DEL SUR 150731012521201|41934 |50498 |50502 |5 |MERLUZA DEL SUR 150731012521101|42010 |50503 |50505 |3 |MERLUZA DEL SUR y lo que se espera es el resultado de mas abajo: debido a que para la guía 42012 hay un salto de la caja 50497 a la 50506. El orden del listado lo dan las cajas de menor a mayor,. lote_completo |cod_guia|caja inicial |caja final |count|des_prod 150731012521301| 42012| 50434 | 50497| 64 |MERLUZA DEL SUR 150731012521201| 41934| 50498 | 50502| 5 |MERLUZA DEL SUR 150731012521101| 42010| 50503 | 50505| 3 |MERLUZA DEL SUR 150731012521301| 42012| 50506 | 50507| 2 |MERLUZA DEL SUR la consulta que llevo por el momento es: Select substring(to_char(packing_acum.lote,'FM9999999999') from 3 for 7) ||case when to_char(packing_acum.cod_prod,'FM9999') < '10' THEN '0'||to_char(packing_acum.cod_prod,'FM9999') ELSE to_char(packing_acum.cod_prod,'FM9999')end || to_char(packing_acum.cod_pesaje,'FM99999999')||'0'||to_char(packing.tipo,'FM9999') as lote_completo, m_pesaje.cod_guia, min(packing_acum.corr), max(packing_acum.corr), count(packing_acum.corr), producto.des_prod , case when packing.tipo = 1 THEN 'ENFRIADO REFRIGERADO' ELSE 'CONGELADO' end as estado_fresco_o_congelado >From m_pesaje inner join ( producto inner join (packing inner join packing_acum on packing.cod_packing = packing_acum.cod_packing) on packing_acum.cod_prod = producto.cod_prod) on packing_acum.cod_pesaje = m_pesaje.cod_pesaje where packing_acum.estado = 5668 and packing_acum.cod_prod <> 0 group by lote_completo, m_pesaje.cod_guia, producto.des_prod,estado_fresco_o_congelado,packing_acum.lote order by min(packing_acum.corr),max(packing_acum.corr) espero se entiendo, muchas gracias.,