Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

lucas mendes

[Resolvido] Select order by Data Desc

Recommended Posts

Boa tarde,

 

Bom tenho um arquivo aqui que faz o seguinte select:

 

SELECT *,date_format(data, '%d/%m/%Y') AS data FROM controle ORDER BY data DESC

Só que na hora que ele exibe na página ele faz totalmente errado a filtragem das datas, percebi que ele filtra a data por dia. EX:

 

Exibe e ordena assim:

25/02/2010

24/03/2010

 

Correto seria exibir e ordenar assim:

24/03/2010

25/02/2010

 

 

------------//

Alguém me ajuda com uma solução...

 

ATT.

Compartilhar este post


Link para o post
Compartilhar em outros sites

você ta mandando a data descer, ae é so trocar por ASC

 

SELECT *,date_format(data, '%d/%m/%Y') AS data FROM controle ORDER BY data ASC

Compartilhar este post


Link para o post
Compartilhar em outros sites

você ta mandando a data descer, ae é so trocar por ASC

 

Na verdade, o problema dele é que ele já possui uma coluna chamada data do tipo DATE, quando ele usa a função date_format() é retornado uma string, só que ele está dando para o resultado de date_format() um apelido igual ao nome da coluna, o ORDER BY em vez de ordenar a coluna do tipo DATE ordena a string e é nesse ponto que é feita a confusão.

 

Para resolver o problema ele precisará referenciar diretamente à coluna e não ao apelido homônimo dado ao resultado de date_format():

 

SELECT *,date_format(`c`.`data`,'%d/%m/%Y') AS 'data' FROM `controle` AS `c` ORDER BY `c`.`data` DESC;

 

Lucas, estou movendo seu tópico para MySQL por ser o local adequado para tratar sobre isso:

 

Movido:

 

PHP http://forum.imasters.com.br/public/style_emoticons/default/seta.gif MySQL

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.