Skip to main content
Announcements
Qlik Connect 2024! Seize endless possibilities! LEARN MORE
cancel
Showing results for 
Search instead for 
Did you mean: 
iuriimprota2
Contributor III
Contributor III

Juntar 5 tabelas diferentes

Olá, pessoal. Gostaria de saber como posso fazer para juntar 5 tabelas diferentes para criar uma única?

As duas primeiras eu consegui juntar, mas as demais ja tentei e so dá erro.

 

 

Script:

 

 


TABELA1_TEMP:
LOAD Distinct
COD,
NOME,
DT_HR,
FROM [lib://origem/TABELA1.qvd]
(qvd);

Join

TABELA2_TEMP:
LOAD
COD,
NOME,
EVENTO,

SERVICO
FROM [lib://origem/TABELA1.qvd] (qvd);

TABELA:
LOAD
COD,
NOME,
EVENTO,

SERVICO

RESIDENT TABELA1_TEMP;

 

TABELA03:
LOAD
CO_UM,
NM_UM
FROM [lib://origem/TABELA3.qvd] (qvd); 

TABELA04:
LOAD
CO_TRES,
NM_TRES

FROM [lib://origem/TABELA4.qvd] (qvd); 

TABELA5:
LOAD
CO_QUATRO,
NM_CINCO

FROM [lib://origem/TABELA4.qvd] (qvd); 

 

 

 

1 Solution

Accepted Solutions
RafaMartins
Creator II
Creator II

Tente usar ao invés de concatenate um left join, a unica tabela que não iria funcionar é essa

MDK:
LOAD
CO_MEDICO,
NM_MEDICO
FROM [lib://ORIGEM/MDK.qvd]
(qvd);

 

onde aparentemente você não tem um campo de ligação.

View solution in original post

8 Replies
RafaMartins
Creator II
Creator II

Boa tarde, se entendi direito você tem 3 tabelas com os mesmos campos de valores que deseja juntar em uma unica e adicionar as dimensões da outra tabela, só não intendi o motivo desse residente. Acredito que isso deva resolver para o que precisa.

TABELA03:
LOAD
CO_UM as COD,
NM_UM as NM
FROM [lib://origem/TABELA3.qvd] (qvd);

Concatenate(TABELA03)
LOAD
CO_TRES as COD,
NM_TRES as NM

FROM [lib://origem/TABELA4.qvd] (qvd);

Concatenate(TABELA03)
LOAD
CO_QUATRO as COD,
NM_CINCO as NM

FROM [lib://origem/TABELA4.qvd] (qvd);

//============================

Left Join
LOAD
COD,
NOME,
DT_HR,
EVENTO,
SERVICO
FROM [lib://origem/TABELA1.qvd]
(qvd);

 

iuriimprota2
Contributor III
Contributor III
Author

São 5 tabelas diferentes, dessas tabelas, só duas tem campos iguais e o restante diferente.

Eu juntei a TABELA1 e TABELA2 e fiz uma tabela com os campos das duas (por isso o resident).

daí tenho mais 3 tabelas que quero juntar.

No caso, queria juntar todas as tabelas para gerar uma unica.

 

 

RafaMartins
Creator II
Creator II

más você tem um campo incomum entre as tabelas, certo?

iuriimprota2
Contributor III
Contributor III
Author

Só tenho campos em comum nas duas primeiras tabelas. As outras 3 tabelas são com campos diferentes.

RafaMartins
Creator II
Creator II

E como vai ser determinado o  vinculo dos dados se você não tem um campo que determina qual linha das 3 tabelas deve se encaixar em tal código das duas primeiras tabelas? 

iuriimprota2
Contributor III
Contributor III
Author

Eu é que não expliquei direito. Realmente todos as tabelas tem pelo menos um campo igual com a primeira.

Eu fiz assim, como no script abaixo, mas não sei se esta correto e nao mostra todos os dados.

Vai o Script na Integra:

 

TBKK:
LOAD Distinct
CO_G,
CO_F,
DT_INICIAL,
HR_INICIAL,
CO_P,
CO_C,
CO_T,
CO_E,
NU_A,
QT_P,
CO_M,
VR_P
FROM [lib://ORIGEM/TBKK.qvd]
(qvd);

Join

TBK:
LOAD
CO_F,
CO_G,
CO_GP,
CO_PA,
CO_C,
CO_CD,
NU_CS,
DT_E,
HR_E,
VR_M,
VR_P,
VR_S,
CO_P,
NU_A

FROM [lib://ORIGEM/TBK.qvd]
(qvd);

Concatenate(TBKK)

 

CVK:
LOAD
CO_C,
NM_RS
FROM [lib://ORIGEM/CVK.qvd]
(qvd);

Concatenate(TBKK)

MDK:
LOAD
CO_MEDICO,
NM_MEDICO
FROM [lib://ORIGEM/MDK.qvd]
(qvd);

Concatenate(TBKK)

TBLK:
LOAD
CO_P,
NM_P
FROM [lib://ORIGEM/TBLK.qvd]
(qvd);

 

 

RafaMartins
Creator II
Creator II

Tente usar ao invés de concatenate um left join, a unica tabela que não iria funcionar é essa

MDK:
LOAD
CO_MEDICO,
NM_MEDICO
FROM [lib://ORIGEM/MDK.qvd]
(qvd);

 

onde aparentemente você não tem um campo de ligação.

iuriimprota2
Contributor III
Contributor III
Author

Obrigado pelo apoio, Rafael. Forte abs!!!