[firebase-br] INNER JOIN X NOT EXIST

ericrodrigues ericrodrigues1509 em gmail.com
Ter Jan 5 11:56:18 -03 2010


vou tentar simplificar... a unica coisa que preciso e que na query, o INNER 
JOIN COBRANCAS funcione como um not exist


"Eduardo Jedliczka" <edujed em gmail.com> 
escreveu na mensagem 
news:82a1441001050509l32d19b21k149edae27b4e589e em mail.gmail.com...
ericrodrigues, suas informações são insuficientes para que alguém consiga
lhe ajudar de uma forma realmente eficaz.

Sua modelagem não foi explicitada e nem qual é o papel das tabelas
Prestacoes / Cobranças.

Como também não sabemos a versão do Firebird (1.0, 2.1, 2.5 RC) não dá para
sugerir algo performático.

Mas tente quebrar sua lógica e estude um pouco sobre o Execute Block.
(http://www.firebirdsql.org/refdocs/langrefupd20-execblock.html)

Abraço

Eduardo

2010/1/5 ericrodrigues 
<ericrodrigues1509 em gmail.com>

> Olá pessoal...
>
> estou com uma query aqui que eu estava usando not exist so que por causa 
> da
> subquery estava ficando muito lento... ja cheguei esperar 1hr para os
> resultados
> por isso estou tentando usar o inner join pra resolver isso... no exemplo,
> estou buscando se encontrar na tabela COBRANCAS... mas se eu quizer buscar
> somente o que eu não encontrar???
>
> segue a query:
>
> SELECT
>  C.CPF_CNPJ,C.NOME,C.NUM_CARTAO,MIN(P.DTVENC) AS MENORDATA,
>  SUM(P.VLRPREST) AS SOMA,COUNT(P.CPF_CNPJ) AS TOTAL,C.ENDER,
>  C.BAIRRO,C.CIDADE,C.UF,C.CEP
> FROM CLIENTES C INNER JOIN PRESTACOES P ON (C.CPF_CNPJ = P.CPF_CNPJ)
>  AND (P.DTPAGTO IS NULL) AND (P.DTVENC < CURRENT_TIMESTAMP)
>
>  INNER JOIN COBRANCAS CO ON (CO.CODLOJA = P.CODLOJA)                \
>  AND (CO.NUMREF = P.NUMREF) AND (CO.NUMPREST = P.NUMPREST)    > O problema
> esta aqui!!!
>  AND (CO.TIPO_COBRANCA in (1))
> /
>
> WHERE P.DTVENC >= '10/1/2009' AND P.DTVENC <= '10/15/2009'
> GROUP BY
> C.CPF_CNPJ,C.NOME,C.NUM_CARTAO,C.ENDER,C.BAIRRO,C.CIDADE,C.UF,C.CEP
>
>
>
>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



-- 
[s]

==========================
Eduardo Jedliczka
Apucarana - Pr
==========================
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use: 
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa







Mais detalhes sobre a lista de discussão lista