Eu estava desenvolvendo um sistema simples onde em uma parte eu tinha a listagem de logs. Para salvá-los eu criei uma tabela onde tinha o campo id(chave primária), algumas informações e um campo para salvar a data e hora daquele registro. Na listagem eu precisei ordená-los, então optei por usar a query com o comando ORDER BY data DESC
para que sejam listados os registros do mais recente para o mais antigo. Fiz isso era dia 28/11 e funcionou tranquilamente. Aí dia 01/12 fui olhar a lista novamente, e ela estava com a ordem completamente invertida, por exemplo os os registros cadastrados dia 29/11 estavam aparecendo por primeiro(como se fossem os mais recentes) e os que fiz no dia 01/12 estavam no final(como se eu fossem salvos por primeiro). A impressão que eu tive foi que ele considerou o dia 01/12 como se fosse do mês de novembro(11), parece que ele ainda não tinha virado o mês. Aí a solução para isso foi que eu coloquei para ordenar pelo campo id com o comando ORDER BY id DESC
, que deu certo, ele mostrava do maior(mais recente) para o menor (mais antigo). Aí hoje dia 05/12 resolvi voltar para a ordenação por data, e por incrível que pareça ele voltou a funcionar do jeito certo. Alguém sabe me explicar o por que isso aconteceu e uma solução?