Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Olá a todos,
Estou fazendo uma extração em um banco de dados Oracle e preciso realizar cargas incrementais de uma tabela por causa de seu tamanho, essa tabela possui uma coluna de data no formato NUMBER que contem mês e ano. No momento da extração eu preciso realizar uma verificação para saber se a primeira extração completa já foi feita e caso tenha sido feita eu extrairei apenas os registros do mês retroativo em que nós estamos. Exemplo:
A data atual é 08/2019, então preciso pegar todos os registros de 07/09 e extrair apenas eles e depois adicioná-los ao arquivo QVD que foi gerado na primeira extração full. Lembrando que no BD a coluna data está no formato NUMBER, com a formatação igual a: 201907
Alguém sabe qual a melhor forma de fazer isso?
Olá @yurigomesdelima,
Você pode tentar algo assim:
[temp]:
Load
max(ANO_MES) as id
from [lib://MEUQVD.qvd](qvd);
let vId = Peek('id');
drop table [temp];
tabela:
SQL
SELECT *
FROM TABELA t
WHERE t.ano_mes > $(vId);
Concatenate
Load *
from [lib://MEUQVD.qvd](qvd);
Store tabela into [lib://MEUQVD.qvd](qvd);
Drop Table tabela;
Espero ter ajudado.
Aparentemente resolveu, estou fazendo o teste e assim que concluir te dou um feedback.
Obrigado!
Que bom! Espero que tenha ajudado.