Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
Olá Pessoal, minha necessidade é a seguinte.
Tenho uma tabela de anuncios, hoje ela é ordenada pela data (order by data DESC) e tudo esta correto, porem, surgiu a necessidade de ordena-la tambem pelo pelo tipo de anuncio (campo integer) que pode ter um dos valores (0 - Gratis, 1 - Simples, 2 - Padrão, 3 - Premium) ou seja, tenho que manter a ordenação por data normalmente, mas no topo das buscas tenho que ordenar alem da data, o tipo de anuncio, quem paga mais fica mais em cima e que não paga nada aparece depois de tudo, porem, respeitando a data para anuncios de mesmo valor, inclusive, para os gratuitos do final. Hoje esta assim
"order by data DESC, tipo ASC"
mas não esta respeitando corretamente a condições e ordenando pela data apenas.
Obrigado.
Ainda continua não funcionando corretamente, leva em consideração apenas a data.
Att
order by data DESC, tipo DESC
1º a data depois o tipo
order by tipo DESC ,data DESC
1º o tipo depois a data
Pois é, mas ele lista usando a data corretamente, mas, o tipo ainda não esta sendo listado corretamente, estranho que deveria estar funcionando assim, pois esta correto. Sera que tem mais alguma coisa?
https://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html#function_date
A data tem a hora ? Pode ser esta a distorção, tente usar a function date()
Poste toda sua consulta.
Até onde eu sei, data é uma palavra reservada no Mysql, e você deveria colocar crases à sua volta, assim:
ORDER BY data DESC, tipo DESC
>
Poste toda sua consulta.
Até onde eu sei, data é uma palavra reservada no Mysql, e você deveria colocar crases à sua volta, assim:
ORDER BY data DESC, tipo DESC
Nopz.
Nem data, nem date
:P
E assim:
ORDER BY data, tipoDESC
order by data DESC, tipo DESC