[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Сортировка по дате
rooor
Приветствую)
Подскажите как сделать последовательный вывод даты?
Время хранится в БД, тип поля INT

mysql_query("SELECT FROM_UNIXTIME(`time`, '%d.%m.%Y') as `time` FROM `table` GROUP BY FROM_UNIXTIME(`time`, '%d.%m.%Y') ORDER BY `time` DESC");

Выводит так:
31.01.2012
30.01.2012
29.02.2012
29.01.2012

А как вывести в нормальном порядке?



Спустя 16 минут (24.03.2012 - 22:36) ADiel написал(а):
ORDER BY FROM_UNIXTIME(`time`, '%Y%m%d')

Спустя 5 минут, 51 секунда (24.03.2012 - 22:41) rooor написал(а):
ADiel
Так тоже делал, результат тот же

Спустя 3 минуты (24.03.2012 - 22:44) Nikitian написал(а):
order by `table`.`time`

Спустя 1 минута, 38 секунд (24.03.2012 - 22:46) rooor написал(а):
ADiel
Пардон) Не заметил разницу. Всё работает. Благодарю)

Спустя 26 секунд (24.03.2012 - 22:47) ADiel написал(а):
Цитата (rooor @ 24.03.2012 - 19:41)
ADiel
Так тоже делал, результат тот же

Не может быть... По int же получается сортировка

т.е. 20101010, 20101011.....

Цитата
Пардон) Не заметил разницу. Всё работает. Благодарю)

wink.gif

Спустя 1 минута, 35 секунд (24.03.2012 - 22:48) ADiel написал(а):
Кстати очень странно... в time unixtime лежит? По нему должно сортироваться как надо... это же секунды..

Спустя 1 минута, 22 секунды (24.03.2012 - 22:49) rooor написал(а):
Я просто в каком формате вытаскивал, в таком и сортировал, т.е. FROM_UNIXTIME(`time`, '%d.%m.%Y');

Название поля другое, я просто для наглядности тут обозвал его time, тип ячейки INT

Спустя 1 минута, 2 секунды (24.03.2012 - 22:50) ADiel написал(а):
ну если там int и UNIXTIME, сортировка по полю time должна корректно работать.

т.е. так
ORDER BY `time` DESC



Я не заметил

FROM_UNIXTIME(`time`, '%d.%m.%Y') as `time`


Попробуйтеалиас другой создать. Запрос будет куда быстрее работать без двойных преобразований.

FROM_UNIXTIME(`time`, '%d.%m.%Y') as `tm` ..... ORDER BY `time` DESC

Спустя 1 минута, 55 секунд (24.03.2012 - 22:52) rooor написал(а):
Я тоже так думал) Но - нет

Спустя 2 минуты, 32 секунды (24.03.2012 - 22:55) ADiel написал(а):
"SELECT FROM_UNIXTIME(`time`, '%d.%m.%Y') as `tm` FROM `table` GROUP BY `tm` ORDER BY `time` DESC"


А выдрегивать уже $row['tm']

Спустя 1 минута, 32 секунды (24.03.2012 - 22:56) rooor написал(а):
ADiel
Да, спасибо) Так тоже работает. Теперь понял в чём косяк))
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.