Ir para conteúdo
Fórum Script Brasil
  • 0

Problema na ordenação de resultados SQL


Rubiz Gardini

Pergunta

Olá pessoal, td bem?

Eu tenho um site que tá agonizante, falta só uma coisa pra ele morrer de vez e eu conseguir felizmente enterrar...

O cliente pediu pra que eu ordenasse os resultados do banco pela hora de alteração...

eu fiz assim, na hora de gravar no banco, a coluna da tabela chama "time" e o valor time('h:i:s');

Daí na hora de ordenar eu coloco ORDER BY time DESC, só q isso tá dando um pau gigantesco q a lista simplesmente não aparece mais!!

Nossa, como eu faço?????

Alguém sabe?

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0

Oi, 'Rubiz Gardini'!

Experimente usar o nome do campo entre crases assim: `time`

e/ou forçar o nome da tabela, assim: `MinhaTabela`.`time`

Para ordenar pelo referido campo use a função TIME_TO_SEC assim: TIME_TO_SEC(`MinhaTabela`.`time`)

Link para o comentário
Compartilhar em outros sites

  • 0
Denis, tem um lance que quando o campo da tabela é DATETIME, ele converte automático e ordena os registros em ordem de data; com o tempo não deveria ser igual?

Oi, Rubiz.

É igual, sim. Mas você tem que lembrar a forma como guarda a hora, pois 8:00 PM é o mesmo que 20:00 e, além disso, as datas influenciam, também. Exemplo: 8:00 para o dia 01/01 8:00 para o dia 02/01. Outra forma que alguns guardam a data é 08:00:00 e 8:0:0 Ou em forma de string. Quando necessito trabalhar com datas e horas não costumo usar campos date e time separadamente. Normalmente uso timestamp. é mais fiel pois guarda da seguinte forma, sempre: aaaa-mm-dd hh:MM:ss

Link para o comentário
Compartilhar em outros sites

Visitante
Este tópico está impedido de receber novos posts.


  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,4k
×
×
  • Criar Novo...