Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Pessoal, necessito da ajuda de vocês para bolar um algoritmo que faça o seguinte:
Simulação dos campos da tabela.
CAMPOS:
======
NUMNOTA
DTNEGOCIACAO
VLRNOTA
VALORES PARA OS CAMPOS:
===================
NUMNOTA || DTNEGOCIACAO || VLRNOTA
210111 || 01/01/2009 || 10.00
210112 || 01/01/2009 || 20.00
210113 || 07/01/2009 || 30.00
210220 || 10/01/2009 || 15.00
210221 || 13/01/2009 || 25.00
210222 || 27/01/2009 || 35.00
210223 || 27/01/2009 || 45.00
210515 || 30/01/2009 || 70.00
Se vocês observarem, o campo NUMNOTA possui uma sequência de valores, que em alguns casos é quebrada. Por exemplo, do NUMNOTA 210114 ao NUMNOTA 210119 não existe.
Estou quebrando a cabeça para criar uma função, que retorne a primeira e última nota, agrupando o valor que as compreendem, até a sequencia quebrar.
O return da função seria como segue abaixo:
NUMOTA: 210111 à 210113 - DTNEGOCIACAO: 01/01/2009 a 07/01/2009 - VLRNOTA: 60.00
NUMOTA: 210220 à 210223 - DTNEGOCIACAO: 10/01/2009 a 27/01/2009 - VLRNOTA: 120.00
NUMOTA: 210515 à 210515 - DTNEGOCIACAO: 30/01/2009 a 30/01/2009 - VLRNOTA: 70.00
O importante não é a menor e maior DTNEGOCIACAO e sim a sequência do campo NUMNOTA.
Se alguém já possuir tal algoritmo em qualquer linguagem, eu transformo para PL/SQL.
Muito obrigado.
Humberto
Carregando comentários...