Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Dois INNER JOIN utilizando a mesma tabela

Boa Tarde. Por gentileza alguém sabe como eu faço 2 INNER JOIN utilizando a mesma tabela ? Eu gostaria de unir dois selects. Eis meu primeiro select:

SELECT  cf."ChequeFolhaId", cf."Valor", bpr."FornecedorId", 
        cfh."DataEmissao", p."Nome" AS NomeFavorecido,  cf."EmpresaId"
    FROM "ChequeFolha" cf, "BaixaPagarReceber" bpr, "ChequeFolhaHistorico" cfh, "Fornecedor" f, "Pessoa" p

      INNER JOIN "Fornecedor" f1 ON p."Guid" = f1."Guid" AND p."PessoaId" = f1."PessoaId"

       WHERE cf."ChequeFolhaId" = :ChequeFolhaId AND ROWNUM = 1

Eis o segundo:

SELECT cf."EmpresaId", p."Nome" 
  FROM "ChequeFolha" cf, "Pessoa" p
  INNER JOIN "Empresa" e ON p."Guid" = e."Guid" AND p."PessoaId" = e."PessoaId"

MInha junção com erro:

SELECT  cf."ChequeFolhaId", cf."Valor", bpr."FornecedorId", 
    cfh."DataEmissao", p."Nome"
FROM "ChequeFolha" cf, "BaixaPagarReceber" bpr, "ChequeFolhaHistorico" cfh, "Fornecedor" f, "Pessoa" p
    INNER JOIN "Fornecedor" f1 ON p."Guid" = f1."Guid" AND p."PessoaId" = f1."PessoaId"
  INNER JOIN "Empresa" e ON p."Guid" = e."Guid" AND p."PessoaId" = e."PessoaId"
    WHERE cf."ChequeFolhaId" = :ChequeFolhaId AND ROWNUM = 1
1 resposta
solução!

Consegui:

SELECT  cf."ChequeFolhaId", 
        cf."Valor", 
        cfh."DataEmissao", 
        e."EmpresaId",
        p."Nome",
        P1."Nome"

        FROM "ChequeFolha" cf

            INNER JOIN "ChequeFolhaHistorico" cfh ON cfh."ChequeFolhaId" = cf."ChequeFolhaId"
            INNER JOIN "BaixaPagarReceber" bpr ON bpr."EmpresaId" = cf."EmpresaId"
            INNER JOIN "Fornecedor" f1 ON f1."FornecedorId" = bpr."FornecedorId"
            INNER JOIN "Pessoa" p ON p."PessoaId" = f1."PessoaId"
            INNER JOIN "Empresa" e ON e."EmpresaId" = cf."EmpresaId"
            INNER JOIN "Pessoa" p1 ON e."PessoaId" = p1."PessoaId"

                WHERE cf."ChequeFolhaId" = :ChequeFolhaId AND ROWNUM = 1