[firebase-br] select case

Rodson Nazario da Silva rodson.nazario em gmail.com
Sáb Jul 14 12:24:06 -03 2012


  Olá Cleber,

  Falta uma virgula após a coluna do cliente, mas com ela visível na query
o banco não conseguirá contar.
  Tente assim:

Select Case When CliEst in ('rs','pr') Then 'Regiao_Sul' Else 'Outra' End
as Estado,
       Count(CliCod) as Total
       From Clientes
 Group By Case When CliEst in ('rs','pr') Then 'Regiao_Sul' Else 'Outra' End
;

2012/7/14 Cleber Cardoso <cleber-pampecam em via-rs.net>

> Prezados
>
> Estou tendo dificuldades nesta select para verificar o nr de clientes por
> estado.
>
> Poderiam me ajudar a esclarecer porque o case não funciona?
>
>
>
> Tenho a tabela clientes, campos clicod (cod cliente), cliest (estado)
>
> SQL>select clicod case cliest when (cliest in('rs','pr')) then 'regiao_sul'
> end as estado, count(*) as total from clientes;
>
> Statement failed, SQLCODE = -104
>
>
>
> Dynamic SQL Error
>
> -SQL error code = -104
>
> -Token unknown - line 1, char 15
>
> -case
>
> SQL>
>
>
>
> Cleber
>
> LI-V6.3.3.4870 Firebird 1.5
>
> Red Hat Enterprise Linux ES release 4 (Nahant)
>
>
>
>
>
> ______________________________________________
> 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
>



-- 
*
Rodson Nazario da Silva*
*Analista de Sistemas e Dados*
*Superior em Sistemas para Internet e **Ciências Atuariais*
*Especialista em Ger. de Projetos e Eng. e Arq. de Software*
(83) 8801-0702
**



Mais detalhes sobre a lista de discussão lista