[firebase-br] CASE INVÁLIDO
Luiz Augusto Tavares da Silveira
latsnet em gmail.com
Qui Jan 20 10:33:29 -03 2011
Ola Reinaldo,
Você pode tentar colocar o case inteiro dentro do Where, ou então fazer um
Select * From (Select .... ) Where ULT_VALOR BETWEEN :p_ValorInicial and
:p_ValorFinal
Abs,
Luiz Augusto Tavares da Silveira
Em 20 de janeiro de 2011 09:14, Reinaldo <diasmartins em gmail.com> escreveu:
> Olá Pessoal estou com um problema, que está ocorrendo um erro na execucao
> do select abaixo.
>
> Eu estou criando um campo através do case, e preciso utiliza-lo no WHERE
>
> Alguém tem alguma dica de como resolver isso?
>
> Att.
>
> Reinaldo
>
>
> SELECT
> DOA.DOACOD, DOA.DOANOM, DOA.DOASTA, DOA.DOAFIL, DOA.CATCOD, DOA.UNICOD,
> CID.CIDCOD, DOA.DOAPES,
> CASE
> WHEN :p_TipoProj = 'UD' THEN COALESCE(DOA.DOAVALULTDOA, 0.00)
> WHEN :p_TipoProj = 'UA' THEN COALESCE(DOA.DOAVALULTACA, 0.00)
> WHEN :p_TipoProj = 'MD' THEN COALESCE(DOA.DOAVALMEDDOA, 0.00)
> WHEN :p_TipoProj = 'MA' THEN COALESCE(DOA.DOAVALMEDACA, 0.00)
> ELSE 0.00
> END AS ULT_VALOR
> FROM
> TAB_DOADORES DOA
> LEFT JOIN TAB_LOGRADOUROS LOGR ON LOGR.LOGRCOD = DOA.DOALOGRCOD1
> LEFT JOIN TAB_BAIRROS BAI ON BAI.BAICOD = LOGR.BAICOD
> LEFT JOIN TAB_CIDADES CID ON CID.CIDCOD = BAI.CIDCOD
> WHERE
> DOA.DOASTA = 'DES' AND
> DOA.DOAFIL = 'RC' AND
> DOA.UNICOD = :p_UNICOD AND
> CID.CIDCOD = :p_CIDCOD AND
> DOA.DOAPES = :p_DOAPES AND
> ---Linha com erro
> -----------------------------------------------------------
> ULT_VALOR BETWEEN :p_ValorInicial and :p_ValorFinal
> -----------------------------------------------------------
> ORDER BY
> DOA.DOADATRCA
>
> ______________________________________________
> 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