Сортировка по дате и просмотрах

Статус
В этой теме нельзя размещать новые ответы.

Smile

Старатель
Регистрация
12 Ноя 2006
Сообщения
157
Реакции
11
Добрый день,

столкнулся с проблемой... копаю со вчерашнего дня но проблему так и не решил...

Хочу создать топ самых популярных постов за 6 часов к примеру.
Если постов за 6 часов нету или их меньше 5 к примеру, выводим за 24 часа.

Таблица

id | name | date(unix_timestamp) | views
----------------------------------------------------
1 | post1 | 30.04.2015 17:30 | 191
2 | post2 | 30.04.2015 15:30 | 30
3 | post3 | 30.04.2015 14:30 | 90
4 | post4 | 29.04.2015 23:30 | 70
5 | post5 | 29.04.2015 22:30 | 40

Как сделать сортировку чтобы получить вот такой результат:

id | name | date(unix_timestamp) | views
----------------------------------------------------
1 | post1 | 30.04.2015 17:30 | 191
3 | post3 | 30.04.2015 14:30 | 90
2 | post2 | 30.04.2015 15:30 | 30
4 | post4 | 29.04.2015 23:30 | 70
4 | post5 | 29.04.2015 22:30 | 40

Я пробовал что-то вроде этого, но это не то...

$sql = "SELECT * FROM `articles` WHERE CASE WHEN created_at > unix_timestamp(now() - interval 4 hour) THEN created_at > unix_timestamp(now() - interval 4 hour) ELSE created_at > unix_timestamp(now() - interval 12 hour) END ORDER BY views DESC LIMIT 9";

Кто знает, помогите плз...
 
напиши select за 5 часов
напиши select за 24 часа
поставь между ними Для просмотра ссылки Войди или Зарегистрируйся
оберни все это скобками и поставь лимит, типа
Код:
select * from  (... union ...) as t limit 5
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху