[firebase-br] Ref.: Select com CASE no WHERE

Matheus(GMAIL) matheus.jgs em gmail.com
Sex Set 28 14:22:07 -03 2012


Cara, acho que você não precisa necessariamente de um CASE.

Utilizando AND e OR não resolveria?
EX:
Where (((STATUS = 'A') AND (CODIGO = '1234')) 
   OR  (STATUS = 'B') AND (CODIGO = '4321')))


Ele vai buscar o item 1234 quando estiver o status ativo. E quando estiver
baixado ele irá procurar o 4321.

Ou talvez se tiver uma finalidade melhor assim poderia ser mais facil de
auxiliar da melhor forma.

-----Original Message-----
From: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br]
On Behalf Of Omar Marques Haddad
Sent: sexta-feira, 28 de setembro de 2012 12:08
To: FireBase
Subject: Re: [firebase-br] Ref.: Select com CASE no WHERE

Opa, Mauricio

Não é CASE dentro da Instrução SELECT, mas sim, o CASE após a instrução
WHERE

Att,
Omar

Em 28 de setembro de 2012 00:39, MAURICIO COSTA
<maximmumsistemas em gmail.com>escreveu:

> Estou te enviando um select dentro de meu sistema. Acho que deva tirar a
> sua dúvida:
> Select
>    P.IDCODIGO,
>    P.desc_reduz AS DESC_PDV,
>    P.DESCRICAO,
>    EP.QTDE_ESTOQUE As estoque,
>    EP.QTDE_MINIMA as est_minimo,
>    EP.ESTOQUE_MAXIMO as est_maximo,
>    G.IDCODIGO as id_grupo,
>    G.DESCRICAO AS GRUPO,
>    s.idcodigo as id_secao,
>    S.DESCRICAO AS SECAO,
>    (SELECT DESC_RED FROM UNIDADES WHERE IDCODIGO =
> P.ID_UNID_VEND)||'/'||CAST(P.FATOR_VEND AS VARCHAR(10)) AS UND_V,
>    (SELECT DESC_RED FROM UNIDADES WHERE IDCODIGO =
> P.ID_UNID_COMP)||'/'||CAST(P.FATOR_COMP AS VARCHAR(10)) AS UND_C,
>    (EP.QTDE_ESTOQUE / P.FATOR_COMP) AS QTDE_UND,
>    EP.PRC_COMPRA AS VL_COMPRA,
>    EP.PRC_VEND_VAR AS VL_VENDA,
>    (EP.PRC_VEND_VAR * P.FATOR_COMP) AS VL_TT_VR,
>    Case
>      When P.TRIBUTAVEL = 'T' then 'TRIBUTAVEL'
>      When P.TRIBUTAVEL = 'S' then 'SUBSTITUTO'
>      When P.TRIBUTAVEL = 'I' then 'ISENTO'
>      When P.TRIBUTAVEL = 'N' then 'NÃO TRIBUTAVEL'
>    end as TRIBUTAVEL,
>    P.ICMS_VENDA
> From PRODUTOS P, ESTOQUE_PRODUTOS EP, GRUPO G, SECCAO S
> Where EP.IDPRODUTO = P.IDCODIGO
> And G.IDCODIGO = P.GRUPO
> AND S.IDCODIGO = P.SECCAO
> AND P.BLOQUEADO = 'N'
> AND P.DELETADO  = 'N'
> ORDER BY
>   G.DESCRICAO,
>   S.DESCRICAO,
>   P.DESCRICAO
>
> Em 27 de setembro de 2012 19:42, Sandro Souza
> <escovadordebits em gmail.com>escreveu:
>
> > Bom dia/tarde Omar.
> >
> > Você teria como passar apenas um esboço ou rascunho de condição que você
> > quer implementar? Aí a gente ajusta p/ ficar com o CASE.
> >
> > Em 27 de setembro de 2012 17:58, Omar Marques Haddad
> > <omarhaddadm em gmail.com>escreveu:
> >
> > > Boa tarde, amigos(as)
> > >
> > > Estou usando o FB 2.1 e gostaria de saber como poderia fazer um select
> > com
> > > a instrução CASE no WHERE, para conforme o valor de um parâmetro, ele
> > > testar ou não uma condição.
> > >
> > > Tem como ?
> > >
> > > --
> > > Att.
> > > Omar Marques Haddad
> > > Analista de Sistemas Sênior
> > > ______________________________________________
> > > 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
> >
> ______________________________________________
> 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
>



-- 
Att.
Omar Marques Haddad
Analista de Sistemas Sênior
______________________________________________
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