wm_concat com order by incorreto
Enviado: Sex, 25 Nov 2016 7:49 am
Bom dia!
Estou com problemas na ordenação ao executar o comando wm_concat ou xmlagg.
Ex. No registro do cartão ponto, tenho uma tabela com as marcações (data e hora) para cada registro entrada 1, saída 1, entrada 2, saída 2. São 4 registros e ao colocar todos os horários juntos, o comando se perde ao ordenar pela hora.
Se eu fizer o select sobre um dia específico, funciona corretamente, mas se colocar de um período maior, ele se perde.
23/08/2016 Ter 354 06:13,11:00,12:15,15:29
24/08/2016 Qua 354 06:15,11:00,12:15,15:20
25/08/2016 Qui 354 06:14,12:15,15:10,11:00
Notem o último registro.
se fizer o select somente sobre o dia 25, fica assim:
25/08/2016 Qui 354 06:14,11:00,12:15,15:10
Como a formatação do horário é transformada em campo char, faço a ordenação pelo campo numérico da hora num subselect interno... Na realidade já fiz de várias formas e sempre ocorre esse problema.
Alguma ideia ???
Estou com problemas na ordenação ao executar o comando wm_concat ou xmlagg.
Ex. No registro do cartão ponto, tenho uma tabela com as marcações (data e hora) para cada registro entrada 1, saída 1, entrada 2, saída 2. São 4 registros e ao colocar todos os horários juntos, o comando se perde ao ordenar pela hora.
Se eu fizer o select sobre um dia específico, funciona corretamente, mas se colocar de um período maior, ele se perde.
23/08/2016 Ter 354 06:13,11:00,12:15,15:29
24/08/2016 Qua 354 06:15,11:00,12:15,15:20
25/08/2016 Qui 354 06:14,12:15,15:10,11:00
Notem o último registro.
se fizer o select somente sobre o dia 25, fica assim:
25/08/2016 Qui 354 06:14,11:00,12:15,15:10
Como a formatação do horário é transformada em campo char, faço a ordenação pelo campo numérico da hora num subselect interno... Na realidade já fiz de várias formas e sempre ocorre esse problema.
Alguma ideia ???