Do not input private or sensitive data. View Qlik Privacy & Cookie Policy.
Skip to main content

Announcements
Want to see what's currently in public preview? We've pulled it all together in one place. Check it out here
cancel
Showing results for 
Search instead for 
Did you mean: 
Not applicable

Load em um sql select

Pessoal, bom dia!

Gostaria de uma ajudinha para montar um qvd.

Tenho o seguinte código sql, composto por tabelas temporárias que resultam em um terceiro select com resultado destas.

create table tb_tmp as (

select

cod

,ocorrencia

,dat

from tabA

)

;

create table tb_tmp2 as (

select

cod

,ocorrencia

,dat

from tabB

)

;

select

cod

,ocorrencia

,dat

from

(

  select distinct

  t.cod

  ,t.ocorrencia

  ,t.dat

  from

  (

      select * from tb_tmp

  ) t

  ,

  (

      select * from tb_tmp2

  ) t1

where t.cod <> t1.cod

)

Preciso criar os qvds destes selects, mas fico em duvida na formação do terceiro sql, como fazer o Load funcionar dentro de um comando sql select?

Alguém tem alguma dica para a situação?

tb_tmp:
sql
select
cod
,ocorrencia
,dat
from tabA;
store  tb_tmp into tb_tmp.qvd;
drop table tb_tmp;

tb_tmp2:
sql
select
cod
,ocorrencia
,dat
from tabB;
store  tb_tmp2 into tb_tmp2.qvd;
drop table tb_tmp2;

tb_3:
sql
select
cod
,ocorrencia
,dat
from
(
  select distinct
  t.cod
  ,t.ocorrencia
  ,t.dat
  from
  (
      Load * from tb_tmp.qvd
  ) t
  ,
  (
      Load * from tb_tmp2.qvd
  ) t1
where t.cod <> t1.cod
);
store  tb_3 into tb_3.qvd;
drop table tb_3;

Obrigada

5 Replies
pablolabbe
Partner Ambassador
Partner Ambassador

Olá ,

Não existe esta sintaxe de leitura de QVDs dentro de um select. Comandos Select somente podem ser utlizados para leitura de tabelas em bancos de dados.

  Você pode explicar melhor a tua necessidade , assim fica mais fácil de dar a dica de como resolver isto.

Att,

Pablo Labbe

Consultor Qlikview

Did you find a solution to your question? Mark the solution as accepted and if you found it useful, press the like button! | Follow me on Linkedin
srchagas
Creator III
Creator III

Bom Dia


Essas tabelas são temporarias correto ? se sua tqabela e temporaria, você irá ler a cada vez que alguem preencheu esses dados só fazer um load total. e ir criando os qvs

aderlanrm
Partner - Specialist
Partner - Specialist

Olá Pecorucha,

Se entendi bem o seu SQL, poderia ser "traduzido" para QlikView assim:

TabA:

LOAD Distinct *;

SQL select cod

    ,ocorrencia

    ,dat

    from tabA;

TabB:

LOAD Distinct *

Where not Exists(cod);

SQL select cod

    ,ocorrencia

    ,dat

    from tabB;

Não sei se é exatamente isso que você precisa, mas testa ai...

O resultado será uma tabela A, devido a contatenação automática do QlikView já que os campos são todos iguais, então, para gerar o QVD, basta fazer o Store da TabA.

Store TabA into Exemplo.qvd (qvd);

Abraço.

Aderlan Rodrigues
Analista, Arquiteto de Dadose e Desenvolvedor
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)
Not applicable
Author

Obrigada pelas dicas pessoal!

Me ajudou muito para a solução do meu script

Abraços

Patricia

aderlanrm
Partner - Specialist
Partner - Specialist

Olá pecorunha,

Qual a solução e marque como resposta, tem mais pessoas aqui na comunidade com a mesma dúvida. Rsrsrsrs...

Abraço.

Aderlan Rodrigues
Analista, Arquiteto de Dadose e Desenvolvedor
 (41) 9 9917-0869  www.BIdeAZ.com.br  Youtube.com/bideaz  Instagram.com/bideaz.in

"Nada é tão inútil quanto fazer eficientemente o que não deveria ser feito." (Peter Drucker)