People I posted here in the topic SQL Query with Duplicate Items I just have another question I have sql:
SELECT
TABNOV.CODIGO_ANDAMENTO,
TABNOV.NUMERO_PROCESSO,
TABNOV.INSTANCIA,
TABNOV.DESCRICAO_ANDAMENTO,
TABNOV.ACESSO_PUBLICO,
TABNOV.DATA,
TABNOV.DATA_INCLUSAO,
TABNOV.HORA,
TABNOV.EMAIL_ENVIADO,
TABNOV.CODIGO_PUBLICACAO,
TABNOV.CODIGO_CONSULTA,
TABNOV.CODIGO_AUDIENCIA,
TABNOV.CODIGO_AGENDAMENTO,
TABNOV.USUARIO_CADASTRO,
TABNOV.USUARIO_ALTERACAO,
TABNOV.DATA_ALTERACAO,
TABNOV.HORA_ALTERACAO,
TABNOV.OBSERVACAO,
TABNOV.NOME_IMAGEM_ANDAMENTO,
TABNOV.NUMERO_PROCESSO_AUX,
TABNOV.ATO_FATURAVEL
FROM
( SELECT
T1.*
FROM
ANDAMENTOS_PROCESSUAIS T1
LEFT JOIN PROCESSOS T2 ON T1.NUMERO_PROCESSO = T2.NUMERO_PROCESSO
WHERE (T1.NUMERO_PROCESSO_AUX = T2.NUMERO_PROCESSO)
AND (T2.FASE_PROCESSO LIKE "ARQUIVADO")
UNION ALL
SELECT
T1.*
FROM
ANDAMENTOS_PROCESSUAIS T1
LEFT JOIN PROCESSOS T2 ON T1.NUMERO_PROCESSO = T2.NUMERO_PROCESSO
WHERE (T1.NUMERO_PROCESSO_AUX = T2.NUMERO_PROCESSO2)
AND (T2.FASE_PROCESSO2 LIKE "ARQUIVADO")
UNION ALL
SELECT
T1.*
FROM
ANDAMENTOS_PROCESSUAIS T1
LEFT JOIN PROCESSOS T2 ON T1.NUMERO_PROCESSO = T2.NUMERO_PROCESSO
WHERE (T1.NUMERO_PROCESSO_AUX = T2.NUMERO_PROCESSO3)
AND (T2.FASE_PROCESSO3 LIKE "ARQUIVADO")
UNION ALL
SELECT
T1.*
FROM
ANDAMENTOS_PROCESSUAIS T1
LEFT JOIN PROCESSOS T2 ON T1.NUMERO_PROCESSO = T2.NUMERO_PROCESSO
WHERE (T1.NUMERO_PROCESSO_AUX = T2.NUMERO_PROCESSO4)
AND (T2.FASE_PROCESSO4 LIKE "ARQUIVADO")
UNION ALL
SELECT
T1.*
FROM
ANDAMENTOS_PROCESSUAIS T1
LEFT JOIN PROCESSOS T2 ON T1.NUMERO_PROCESSO = T2.NUMERO_PROCESSO
WHERE (T1.NUMERO_PROCESSO_AUX = T2.NUMERO_PROCESSO5)
AND (T2.FASE_PROCESSO5 LIKE "ARQUIVADO")
UNION ALL
SELECT
T1.*
FROM
ANDAMENTOS_PROCESSUAIS T1
LEFT JOIN PROCESSOS T2 ON T1.NUMERO_PROCESSO = T2.NUMERO_PROCESSO
WHERE (T1.NUMERO_PROCESSO_AUX = T2.NUMERO_PROCESSO6)
AND (T2.FASE_PROCESSO6 LIKE "ARQUIVADO")
UNION ALL
SELECT
T1.*
FROM
ANDAMENTOS_PROCESSUAIS T1
LEFT JOIN PROCESSOS T2 ON T1.NUMERO_PROCESSO = T2.NUMERO_PROCESSO
WHERE (T1.NUMERO_PROCESSO_AUX = T2.NUMERO_PROCESSO7)
AND (T2.FASE_PROCESSO7 LIKE "ARQUIVADO")
UNION ALL
SELECT
T1.*
FROM
ANDAMENTOS_PROCESSUAIS T1
LEFT JOIN PROCESSOS T2 ON T1.NUMERO_PROCESSO = T2.NUMERO_PROCESSO
WHERE (T1.NUMERO_PROCESSO_AUX = T2.NUMERO_PROCESSO8)
AND (T2.FASE_PROCESSO8 LIKE "ARQUIVADO")) TABNOV
and it actually follows another six Unions
only that some of the items appear duplicate and at the moment of passing the query items to the PK duplicity error table I do not know what to do since the registration in the main table does not is duplicate?
Table structure:
CREATE TABLE ANDAMENTOS_PROCESSUAIS (
CODIGO_ANDAMENTO INTEGER NOT NULL,
NUMERO_PROCESSO VARCHAR(30) NOT NULL,
INSTANCIA INTEGER NOT NULL,
DESCRICAO_ANDAMENTO VARCHAR(200),
ACESSO_PUBLICO VARCHAR(1) NOT NULL,
DATA DATE NOT NULL,
DATA_INCLUSAO DATE,
HORA VARCHAR(5) NOT NULL,
EMAIL_ENVIADO VARCHAR(1),
CODIGO_PUBLICACAO INTEGER,
CODIGO_CONSULTA INTEGER,
CODIGO_AUDIENCIA INTEGER,
CODIGO_AGENDAMENTO INTEGER,
USUARIO_CADASTRO VARCHAR(15),
USUARIO_ALTERACAO VARCHAR(15),
DATA_ALTERACAO DATE,
HORA_ALTERACAO VARCHAR(5),
OBSERVACAO VARCHAR(8100),
NOME_IMAGEM_ANDAMENTO VARCHAR(50),
NUMERO_PROCESSO_AUX VARCHAR(30) NOT NULL,
ATO_FATURAVEL VARCHAR(1));
ALTER TABLE ANDAMENTOS_PROCESSUAIS ADD CONSTRAINT PK_ANDAMENTOS_PROCESSUAIS PRIMARY KEY (CODIGO_ANDAMENTO);
ALTER TABLE ANDAMENTOS_PROCESSUAIS ADD CONSTRAINT FK_AND_NUMERO_PROCESSO FOREIGN KEY (NUMERO_PROCESSO) REFERENCES PROCESSOS(NUMERO_PROCESSO);
CREATE TABLE PROCESSOS (
NUMERO_PROCESSO VARCHAR(30) NOT NULL,
FASE_PROCESSO VARCHAR(25) NOT NULL,
NUMERO_PROCESSO2 VARCHAR(30),
FASE_PROCESSO2 VARCHAR(25),
NUMERO_PROCESSO3 VARCHAR(30),
FASE_PROCESSO3 VARCHAR(25),
NUMERO_PROCESSO4 VARCHAR(30),
FASE_PROCESSO4 VARCHAR(25),
NUMERO_E_VARA4 VARCHAR(25),
NUMERO_PROCESSO5 VARCHAR(30),
FASE_PROCESSO5 VARCHAR(25),
NUMERO_PROCESSO6 VARCHAR(30),
FASE_PROCESSO6 VARCHAR(25),
NUMERO_PROCESSO7 VARCHAR(30),
FASE_PROCESSO7 VARCHAR(25),
NUMERO_PROCESSO8 VARCHAR(30),
FASE_PROCESSO8 VARCHAR(25),
OBSERVACAO VARCHAR(2000));