[firebase-br] melhorar o meu case
Eduardo Pelizzari de Andrade
eduardoandrade em persoft.com.br
Sex Ago 3 12:32:32 -03 2007
tente assim:
select data, extract(hour from hora) as hh, case when extract(minute from hora) < 15 then 0
when extract(minute from hora) < 30 then 15
when extract(minute from hora) < 45 then 30
else 45
end as mm,
count(*) as total
from movimento
group by data, hh, mm
Alax Jorge Morais Filho escreveu:
> Talvez você poderia converte isso em uma trigger (before insert/update)
> gravando em dois campos já com resultado
> assim você já daria o select neles.
>
> Álax Jorge Morais Filho
>
> samuel ferreira escreveu:
>
>> ola
>>
>> tudo bem? estou usando o fb 1.5.
>>
>> preciso fazer uma query, onde meu usuario define se o agrupamento de horario
>> vai ser de 15 em 15, 30 em 30 minutos ou de hora em hora.
>>
>> na minha tabela tenho a hora real do evento. com uma procedure, eu consegui
>> fazer, mas gostaria de fazer direto no select (creio q fica mais rapido).
>> tem alguma outra alternativa pra fazer isso?
>>
>> queria algo meio parecido com a query abaixo:
>>
>> select data, extract(hour from hora) as hh, case extract(minute from hora)
>> when < 15 then 0
>> when < 30 then 15
>> when < 45 then 30
>> else 45
>> end as mm,
>> count(*) as total
>> from movimento
>> group by data, hh, mm
>>
>> samuel
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
>>
>>
>>
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para editar sua configuração na lista, use o endereço http://mail.firebase.com.br/mailman/listinfo/lista_firebase.com.br
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
>
>
>
--
Eduardo Pelizzari de Andrade
Persoft Softwares Aplicativos
Fone: 55 11 62218061
Mais detalhes sobre a lista de discussão lista