Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
Olá comunidade,
gostaria se possível sugestões de desenvolvimento para o seguinte cenário:
Tenho um QVD-1 com a seguinte estrututura:
MATRICULA; SENHA; DATA_INTERNACAO; DATA_ALTA
E tenho outro QVD-2 com uma quantidade bem considerável de registros, abaixo alguns campos desse QVD:
MATRICULA; CODIGO; DATA_EVENTO.
O que eu gostaria de fazer é o seguinte:
Para cada linha em QVD-2 verificar se a MATRICULA existe em QVD-1 e depois verificar se a DATA_EVENTO esta contida entre DATA_INTERNACAO e DATA_ALTA.
Se minha condição for atendida vou criar um novo campo em QVD-2 com o numero da senha de QVD-1, caso contrátio vou deixar em branco.
Segue o script... so cria uma aplicação e cola..
mapeamento:
mapping load
matricula,
senha
FROM [lib://doc/qvd-1.xlsx]
(ooxml, embedded labels, table is Planilha1);
qvd1: /*ler dados qvd-1*/
LOAD
matricula,
data_internacao,
data_alta,
senha
FROM [lib://doc/qvd-1.xlsx]
(ooxml, embedded labels, table is Planilha1);
qvd2_tmp: /*ler dados qvd-2 onde existe matricula no qvd-1*/
LOAD
matricula,
codigo,
data_evento
FROM [lib://doc/qvd-2.xlsx]
(ooxml, embedded labels, table is Planilha1)
where Exists(matricula);
drop table qvd1;/*elimina da memória a tabela qvd-1*/
qvd2:/*carrega na memória qvd2 e faz join com qvd-1 para puxar as datas*/
noconcatenate LOAD *
resident qvd2_tmp;
left join(qvd2)
load *
FROM [lib://doc/qvd-1.xlsx]
(ooxml, embedded labels, table is Planilha1);
drop table qvd2_tmp;//tira da memória a tabela qvd-2 temporaria
tabfinal:/*tabela final aplicando a regra*/
LOAD matricula,
codigo,
IF(data_evento >= data_internacao and data_evento <= data_alta,
APPLYMAP('mapeamento',matricula),'Sem Senha') AS senhafinal
resident qvd2;
drop table qvd2;
Show! Vou testar.
Beleza, aguardo.
Funcionou ? Precisa de mais alguma ajuda?
Funcionou, obrigado.
Não esqueça de marcar a resposta como correta e assim fecharmos o tópico.
Na dúvida de como fazer isso veja o item 2.3 do Manual do usuário | Como criar e gerir minhas perguntas?
Que bom Pedro ! Fico feliz em ajudar, por favor marque a resposta como correta para atualizarmos o tópico..
abraço