[firebase-br] Order by intercalando

Gilson gilson em rio-minas.com
Qui Ago 22 14:38:58 -03 2013


Muito Obrigado a todos

order by coalesce(dataoficio, dataprot) asc

deu certo  !!



Em 22/08/2013 14:29, Rodrigo Gomes da Silva escreveu:
> order by coalesce(dataoficio, dataprot)
>
>
> Em 22 de agosto de 2013 14:21, Marcos Weimer <marcosweimer em gmail.com>escreveu:
>
>> eu tentaria algo mais ou menos assim...
>>
>> select dataoficio, dataprot, case dataoficio is null then dataprot else
>> dataoficio end
>> order by 3
>>
>>
>> -=Ma®©oS=-
>> Marcos R. Weimer
>> Delphi / C# / ASP.NET / WebServices / Firebird
>>
>>
>>
>> Em 22 de agosto de 2013 14:18, Renan Rogowski Pozzo
>> <renanrpozzo em gmail.com>escreveu:
>>
>>> Gilson,
>>> quando você tiver o DataProt, o DataOficio sempre vai ser em branco?
>>>
>>> Se for assim, o que você pode fazer é concatenar os campos transformando
>> em
>>> um só:
>>>
>>> coalesce(DataProt,'') || coalesce(DataOficio,'')
>>>
>>> depois ordenar esse campo.
>>>
>>> Espero ter ajudado.
>>> Abraço,
>>> Renan
>>>
>>>
>>>
>>> Em 22 de agosto de 2013 14:12, José Mauricio Barbisan Zottis <
>>> bzottis em ig.com.br> escreveu:
>>>
>>>> entendi agora, mas não sei se consigo te ajudar, o que pensei que não
>> sei
>>>> se da certo é fazer no order by um subselect
>>>> ((select min(data_prot) from tabela where ... ) or (select
>>> min(data_oficio)
>>>> from tabela where  ))
>>>>
>>>> ou algo no genero, pois se fazer order simples, ele colocara como
>>>> prioridade o campo escolhido.
>>>>
>>>>
>>>> espero que lhe seja útil.
>>>>
>>>> Zottis
>>>>
>>>>
>>>>
>>>>
>>>> Em 22 de agosto de 2013 14:03, Gilson <gilson em rio-minas.com> escreveu:
>>>>
>>>>> Seguinte:
>>>>>
>>>>> *DataProt*
>>>>> 15/02/2012
>>>>> 15/01/2012
>>>>> 15/06/2012
>>>>>
>>>>> *DataOficio*
>>>>> 14/05/2012
>>>>> 13/06/2012
>>>>> 01/01/2012
>>>>>
>>>>> eu preciso ordenar esses dois campos data so que intercalando assim:
>>>>> *DataOficio       DataProt*
>>>>> 01/01/2012
>>>>>                           15/01/2012
>>>>>                           15/02/2012
>>>>> 14/05/2012
>>>>> 13/06/2012
>>>>>                          15/06/2012
>>>>>
>>>>> Seu eu do um Order By DataOficio ASC, DataProt Asc ele fica assim:
>>>>> *DataOficio        DataProt*
>>>>> 01/01/2012
>>>>> 14/05/2012
>>>>> 13/06/2012
>>>>>                            15/01/2012
>>>>>                            15/02/2012
>>>>>                            15/06/2012
>>>>>
>>>>>
>>>>>
>>>>> Em 22/08/2013 11:16, José Mauricio Barbisan Zottis escreveu:
>>>>>
>>>>>   Eu não entendi direito, vc pode ser mais específico?
>>>>>>
>>>>>>
>>>>>>
>>>>> --
>>>>>
>>>>> ______________________________**________________
>>>>> 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<
>>>> http://www.firebase.com.br/fb/artigo.php?id=1107>
>>>>> Para consultar mensagens antigas: http://firebase.com.br/**pesquisa<
>>>> 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
>>>>


-- 





Mais detalhes sobre a lista de discussão lista