Unlock a world of possibilities! Login now and discover the exclusive benefits awaiting you.
No editor de carga de dados do QlikSense, criei algumas tabelas. Agora, gostaria de utilizar os dados dessas tabelas criadas em outra seção, mas está dando erro na linha do FROM. O que está errado?
Criadas anteriormente:
----------------------------------------------
[NUM_DOCS]:
LOAD
id_protocolo,
processo,
documento,
tipo_documento,
data_assinatura;
SQL SELECT
t1.id_protocolo,
t1.protocolo_completo AS processo,
(MAX(t1.documento)) AS documento,
t1.tipo_documento,
t1.data_assinatura
FROM DOCS_ASSINADOS t1, ULT_ASSINATURA t2
WHERE (t1.id_protocolo = t2.id_protocolo AND t1.data_assinatura = t2.data_assinatura AND t1.tipo_documento =
t2.tipo_documento);
-------------------
ERROR [42000] [Qlik][ODBC MySQL Wire Protocol driver][MySQL]You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'DOCS_ASSINADOS t1, ULT_ASSINATURA t2
WHERE (t1.id_protocolo = t2.id_p' at line 6
Fabiana,
Quando você diz que criou anteriormente duas tabelas acredito que um load resident resolveria...mas, considerando seu select tenho uma sugestão.
Receio que assim deve funcionar:
DOCS_ASSINADOS:
Load
*;
SQL SELECT
id_protocolo,
protocolo_completo AS processo,
tipo_documento,
data_assinatura
FROM DOCS_ASSINADOS;
Left Join (DOCS_ASSINADOS)
Load
id_protocolo,
documento;
SQL SELECT
id_protocolo,
MAX(documento) AS documento
FROM DOCS_ASSINADOS t1 Where (exists (select * from ULT_ASSINATURA t2
WHERE t1.id_protocolo = t2.id_protocolo)) group by id_protocolo;
May be try like this:
[NUM_DOCS]:
LOAD
id_protocolo,
processo,
documento,
tipo_documento,
data_assinatura;
SQL SELECT
t1.id_protocolo,
t1.protocolo_completo AS processo,
(MAX(t1.documento)) AS documento,
t1.tipo_documento,
t1.data_assinatura
FROM DOCS_ASSINADOS t1, ULT_ASSINATURA t2
ON (t1.id_protocolo = t2.id_protocolo)
where t1.data_assinatura = t2.data_assinatura AND t1.tipo_documento = t2.tipo_documento
GROUP BY id_protocolo,t1.documento;
OR
SQL SELECT
t1.id_protocolo,
t1.protocolo_completo AS processo,
MAX(t1.documento) AS documento,
t1.tipo_documento,
t1.data_assinatura
FROM DOCS_ASSINADOS t1
where exists (select t2.id_protocolo from ULT_ASSINATURA t2 where
t1.id_protocolo = t2.id_protocolo)
GROUP BY id_protocolo,t1.documento;