postgresql - ORDER BY e/ou ROW_NUMBER()
Olá,
Como realizar uma ordenação quando a ordem lógica entre uma linha e outra é de forma subsequente em zigue-zague conforme abaixo:
"hora_entrada";"hora_saida";"order_by_hora_entrada";"order_needed"
"2014-12-30 10:12:00";"2014-12-30 10:34:00";1;1
"2014-12-30 10:34:00";"2014-12-30 11:20:00";2;2
"2014-12-30 11:06:00";"2014-12-31 17:03:00";3;5
"2014-12-30 11:20:00";"2014-12-30 11:21:00";4;3
"2014-12-30 11:21:00";"2014-12-30 11:06:00";5;4
"2014-12-31 17:03:00";"2015-01-02 10:06:00";6;6
"2015-01-02 09:19:00";"2015-01-02 09:25:00";7;8
"2015-01-02 10:06:00";"2015-01-02 09:19:00";8;7
Se obedecer a ordem "hora_entrada", acima estará correto conforme a coluna 3, mas preciso da ordem hora_entrada > hora_saida > hora_entrada (próxima linha), considerando que a hora_saida de uma linha é igual a hora_entrada da linha a seguir, conforme coluna 4. Verifique que a ordem é bem diferente.
OBS: esses erros ocorreram quando entre a entrada e a saída pode haver divergências no horário de verão da tramitação.
Posso ordenar de forma direta ou utilizando row_number?
Agradeço a ajuda!
Discussão (3)
Carregando comentários...