Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
tenho uma query que utiliza timestamp e realizo uma subtração (data antiga - data atual), assim consigo uma duração (3 dias, 4 dias...).
só que preciso fazer uma query que me ordena conforme esta subtração, ou seja
1> 3 dias
2> 4 dias
3> 10 dias
4> 15 dias
5> ....
só que aí vem o problema, pois existem valores que me retorna 0 dias, mas eu preciso jogar estes 0 dias logo abaixo do 15 dias, e nao estou entendendo como fazer isso, tem como? ficaria desta forma:
1> 3 dias
2> 4 dias
3> 10 dias
4> 15 dias
5> 0 dias
6> 0 dias
7> 0 dias
8> 0 dias
9> ...
se eu coloco tempo DESC os valores de 0 dias fica tudo em cima
Não consegui ainda, ele ainda continua ordenando o "0" primeiro, coloquei desta forma na query
ORDER BY (case when (tempo > 0) then tempo end) ASC, tempo DESC
ele traz o seguinte resultado:
>
TEMPO
0
0
0
0
0
2268237
3285355
12106917
precisando que estes "0" ficam logo abaixo"
http://forum.imasters.com.br/topic/508264-somar-valores-da-consulta-para-fazer-order-by/
http://forum.imasters.com.br/topic/481464-if-dentro-do-order-by/