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.,

Responder a