Qlik Community

Qlik Brasil

Group community for Brazil users. discussion only in Portuguese.

Highlighted
Not applicable

Conexões em duas base de dados

Boa noite!

Tenho um base de dados no PostGresql onde tem a tabela cad_processo, onde tenho o número do processo, e em outra base no Firebird tenho o valor pago do processo na tabela cadastro. Gostaria de saber como fazer a junção destas duas tabelas em bancos diferentes. Todas as vezes mostra erro pois não fica disponível as duas conexões.

1 Solution

Accepted Solutions
Not applicable

Re: Conexões em duas base de dados

Olá Marcio,

Você pode utilizar o Inner join , ou ainda utilizar where exists (PK_COMPOSTA) na tabela CADDESP.

Att,

Maicon Mello

5 Replies
MVP
MVP

Re: Conexões em duas base de dados

Bom dia.

A conexao vem antes do SELECT

Exemplo:

OLEDB CONNECT32 .....PostGree......

LOAD

         A,

         *;

SQL SELECT* FROM Tabela1;

left join

OLEDB CONNECT32 .....FireBird......

LOAD

         A,

         *;

SQL SELECT* FROM Tabela2;

MVP
MVP

Re: Conexões em duas base de dados

um connect faz automaticamente a desconeccao do outro.  Entao, antes de cada acesso ao banco que voce quer ler, tem que fazer um connect. Depois do connect podes ler quantas tabelas quiser dentro do mesmo connect ate um outro connect ou um disconnect

Not applicable

Re: Conexões em duas base de dados

Bom dia! Alessandro realizarei os testes, mas desde já obrigado pela presteza.

Not applicable

Re: Conexões em duas base de dados

Bom dia!

Na tabela integra tem 205 registros e na caddesp 313373 registros. Gostaria que retornasse apenas os 205 registros da tabela integra com seus respectivos valores na tabela caddesp. Onde esta o erro no Left Join?

Integra:

LOAD

  ("num_processo" & '_' & Year("dat_entrada")) as [Pk Composta],

  "seq_integra" as [Código do Integra],

    "dsc_tipo",

    "dat_documento",

    "num_processo",

    "num_documento",

    "dat_entrada",

    "dsc_assunto",

    "dsc_detalhamento",

    "dsc_situacao",

    "dat_atualizacao";

SQL SELECT "seq_integra",

    "dsc_tipo",

    "dat_documento",

    "num_processo" ,

    "num_documento",

    "dat_entrada",

    "dsc_assunto",

    "dsc_detalhamento",

    "dsc_situacao",

    "dat_atualizacao"

FROM ses."sc_sjs"."sjs_integra_processo";

Left Join (Integra)

ODBC CONNECT32 TO Firebird (XUserId is eDIZeJFLTCREUABa, XPassword is cXJbTWFMTDdKGZNNFLeIL);

CADDESP:

LOAD

  ("PROCOD" & '_' & "PROANO") as [Pk Composta],

  PROANO,

    PROCOD,

    VALORORI;

SQL SELECT

  PROANO,

  PROCOD,

    VALORORI

FROM CADASTRO;

Not applicable

Re: Conexões em duas base de dados

Olá Marcio,

Você pode utilizar o Inner join , ou ainda utilizar where exists (PK_COMPOSTA) na tabela CADDESP.

Att,

Maicon Mello