Рейтинг постов и выборка за 7 или 30 дней самых популярных

206
15 декабря 2016, 15:54

Задача:

Сделать рейтинг постов, чтоб голосовать можно были только 1 раз за 1 пост с 1 ip.

Мое решение:

|id        |int(11)
|post_id   |int(11)
|rating    |int(11)
|ip        |varchar(255)
|date_creat|timestamp

Считать рейтинг я буду через sum()

Но, как сделать сортировку по рейтингу например за последние 7 дней я не знаю, буду признателен если подскажите или пошлете в нужном направлении.

Answer 1
select post_id, sum(rating) rating from table
where date_create >= now() - interval 7 day
group by post_id
order by rating desc
Answer 2
SELECT SUM(RATING) FROM RATING_TABLE WHERE СЕГОДНЯ МИНУС 7 ИЛИ 30 ДНЕЙ < CREATE_DATE GROUP BY DATE_CREATE
READ ALSO
Цикл вывода стетей/новостей - в теле HTML или отдельно?

Цикл вывода стетей/новостей - в теле HTML или отдельно?

Как лучше выводить статьи/новости на сайте - писать запрос к БД и цикл прямо в теле HTML-документа или создавать отдельный PHP-файл, а потом просто...

147
Убрать дубли из результата запроса

Убрать дубли из результата запроса

у клиента есть несколько телефонов и emailпосле такого запроса получаются дубли, что-то типа CROSS JOIN как устранить дубликаты? в таблицах client_phones,...

199
Бан по IP не работает [закрыто]

Бан по IP не работает [закрыто]

Написал простейший скрипт бана пользователя по IP с использованием базы данных, но он почему то не хочет работатьВ чем может быть проблема?

158