fcottf 0 Denunciar post Postado Fevereiro 7, 2008 Dae galera. Estou com uma dúvida de qual a melhor forma de usar as datas. Quero classificar o modo de exibição dos arquivos pela data que foram armazenados no banco. Inicialmente gravei no campo data (varchar) do banco da seguinte maneira. HisdmY Mas não sei se é a melhor opção e também nãos ei como fazer a comparação entre datas daí. Quem souber como posta ae. vlw Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Fevereiro 7, 2008 O correto é usar os campos para esse fim. Se for MySQL, use DATE ou DATETIME Compartilhar este post Link para o post Compartilhar em outros sites
fcottf 0 Denunciar post Postado Fevereiro 7, 2008 E como q faço as contas pra saber quem eh o mais recentes, etc etc... ? Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Fevereiro 7, 2008 Maior data: Select max(data_hora) From tabela menor data: select min(data_hora) From tabela Mais em: http://dev.mysql.com/doc/refman/4.1/pt/dat...-functions.html Compartilhar este post Link para o post Compartilhar em outros sites
fcottf 0 Denunciar post Postado Fevereiro 7, 2008 Huuum... eu quero mostrar todas as fotos do usuario pela ordem de criação (data). Eu tenho q usar este max e fazer um sort... costumo usar só o bouble sort Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Fevereiro 7, 2008 pode usar Order By campo_data, sem precisar usar sort(). http://forum.imasters.com.br/public/style_emoticons/default/thumbsup.gif Compartilhar este post Link para o post Compartilhar em outros sites
fcottf 0 Denunciar post Postado Fevereiro 7, 2008 Beraldo... pode dar uma dica de como fazer esse ORDER BY? Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Fevereiro 7, 2008 O "Order By" é inserido na própria consulta SQL: Select dados from tabela Order By campo; Pode ser: Order By campo ASC -> de forma ascendente Order By campo DESC -> de forma descendente Compartilhar este post Link para o post Compartilhar em outros sites
Rispiridon 3 Denunciar post Postado Fevereiro 7, 2008 achu q order by asc é desnecessario pq uma consulta ja vem asc automaticamente neh! XD Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Fevereiro 7, 2008 achu q order by asc é desnecessario pq uma consulta ja vem asc automaticamente neh! XD sim. o padrão é ascendente, mas citei para que ele saiba da existência do "modificador" ASC Para ordenar inversamente, adicione a palavra-chave DESC (descendente) ao nome da coluna na cláusula ORDER BY na qual você está ordenando. A ordem padrão é ascedente; ela pode ser especificada explicitamente usando a palavra-chave ASC.Fonte: http://dev.mysql.com/doc/refman/4.1/pt/select.html Compartilhar este post Link para o post Compartilhar em outros sites
fcottf 0 Denunciar post Postado Fevereiro 7, 2008 ok entendi. Mas se eu quiser fazer um order by usando dois campos. Priorizo o que de maior numero de visitas, mas caso o numero de visitas entre dois seja igual, ele escolhe pela data mais recente. Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Fevereiro 7, 2008 leia o link que postei acima. Lá mostra que esta sintaxe é válida: Order By canpo1, campo2 Compartilhar este post Link para o post Compartilhar em outros sites
fcottf 0 Denunciar post Postado Fevereiro 7, 2008 O problema está mais na sintaxe msm. A instrução abaixo não está dando certo... SELECT * FROM tabela ORDER BY MAX(vizualizacoes), data DESC A idéia é ordenar prioritariamente o pelos mais vizualizados, e se tiver iguais, ordena pela data huumm... acho q consegui... seria isso? SELECT * FROM tabela ORDER BY vizualizacoes DESC, data DESC Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Fevereiro 7, 2008 Não use funções no order By. Retire o MAX(). Compartilhar este post Link para o post Compartilhar em outros sites
fcottf 0 Denunciar post Postado Fevereiro 8, 2008 Olá. Deu certo =D useri o Desc usando o campo1 = vizus e campo2 = data, e ele prioriza as vizualizações. Quanto à Data no MySQL, qual a melhor função para puxar ela do banco e alterar a sintaxe que a data aparece? Eu quero puxar a data que esta em formato datatime pra deixar no formato 00/00/0000, ou seja tiro as horas e altero o formato da data Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Fevereiro 8, 2008 Date_format() Compartilhar este post Link para o post Compartilhar em outros sites
fcottf 0 Denunciar post Postado Fevereiro 8, 2008 alguma função semelhante no PHP? Compartilhar este post Link para o post Compartilhar em outros sites
Beraldo 864 Denunciar post Postado Fevereiro 8, 2008 date() outras funções de data e hora do PHP http://www.php.net/manual/pt_BR/ref.datetime.php Compartilhar este post Link para o post Compartilhar em outros sites