[firebase-br] Select otimizado

Renan Rogowski Pozzo renanrpozzo em gmail.com
Seg Jun 2 15:06:46 -03 2014


No FB.

Abraço,
Renan Rogowski Pozzo

*"Entrega o teu caminho ao Senhor; confia nele, e ele o fará." Salmos 37:5*


Em 2 de junho de 2014 14:50, Paulo Sérgo Feix <paulinhofeix em gmail.com>
escreveu:

> Só para entender você esta fazendo esta Procedure no Delphi ou FB ????
>
>
> Em 2 de junho de 2014 12:35, Renan Rogowski Pozzo <renanrpozzo em gmail.com>
> escreveu:
>
> > Resolvi da seguinte forma:
> > coloquei a consulta do where em uma variável e carrego ela de acordo com
> a
> > condição:
> >
> > Ex.:
> > -- SQL recebe a condição
> >
> > *  if (:tipo = 2) then*
> > *    sql = ' (ped.id_cliente = '|| :id_cliente ||') ' ;*
> > *  else*
> > *    sql = ' (ped.id_cliente = '|| :id_cliente ||' or ped.id_indicador =
> > '||:id_cliente||') ';*
> >
> > -- no select, que coloquei dentro de um execute statement, passo a
> variável
> > no final
> >
> > *  for*
> > *    execute statement('*
> > *      select ....*
> >
> > *    where '||:sql')*
> >
> > Assim não crio repetições do select dentro da procedure.
> >
> > Abraço,
> > Renan Rogowski Pozzo
> >
> > *"Entrega o teu caminho ao Senhor; confia nele, e ele o fará." Salmos
> 37:5*
> >
> >
> > Em 2 de junho de 2014 11:25, Renan Rogowski Pozzo <renanrpozzo em gmail.com
> >
> > escreveu:
> >
> > > Olá Rodrigo,
> > > justamente a ideia é otimizar a consulta.
> > > Queria em contrapartida reduzir código na procedure.
> > >
> > > Abraço,
> > > Renan Rogowski Pozzo
> > >
> > > *"Entrega o teu caminho ao Senhor; confia nele, e ele o fará." Salmos
> > 37:5*
> > >
> > >
> > > Em 2 de junho de 2014 11:18, Paulo Sérgo Feix <paulinhofeix em gmail.com>
> > > escreveu:
> > >
> > > Na procedure vc pode faz, eu tenho uma desta forma
> > >>
> > >>  WHERE
> > >>     (
> > >>      (UPPER(P.IDN_STATUS) = UPPER('A'))
> > >>      AND
> > >>      (
> > >>       (
> > >>        (:ISECCION > 0)
> > >>        AND
> > >>        (P.SECCION = :ISECCION)
> > >>        )
> > >>        OR
> > >>        (:ISECCION IS NULL)
> > >>        )
> > >>      )
> > >>
> > >>
> > >> Em 2 de junho de 2014 09:09, Renan Rogowski Pozzo <
> > renanrpozzo em gmail.com>
> > >> escreveu:
> > >>
> > >> > Bom dia,
> > >> > gostaria de saber se é possível, ou se alguém tem alguma sugestão
> > para a
> > >> > situação abaixo:
> > >> >
> > >> > Em um select que tenho em uma procedure, a clausula where vai mudar
> > >> > dependendo da condição.
> > >> >
> > >> > Ex.:
> > >> > if (:tipo = 2) then
> > >> > select
> > >> > ... where (ped.id_cliente = :id_cliente)
> > >> > else
> > >> > select
> > >> > ... where (ped.id_cliente = :id_cliente or ped.ind = :id_cliente)
> > >> >
> > >> > Irá mudar apenas a parte do where, o restante do select é igual.
> > >> > Existe uma forma de eu aproveitar o mesmo select e mudar apenas a
> > >> cláusula
> > >> > where dependendo da minha condição?
> > >> >
> > >> > Abraço,
> > >> > Renan Rogowski Pozzo
> > >> >
> > >> > *"Entrega o teu caminho ao Senhor; confia nele, e ele o fará."
> Salmos
> > >> 37:5*
> > >> > ______________________________________________
> > >> > 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
> > >> >
> > >>
> > >>
> > >>
> > >> --
> > >> Paulinho Sérgio Feix
> > >> ______________________________________________
> > >> 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
> > >>
> > >
> > >
> > ______________________________________________
> > 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
> >
>
>
>
> --
> Paulinho Sérgio Feix
> ______________________________________________
> 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