pLavrenov
@pLavrenov
Разработка сайтов

Как составить sql запрос с сортировкой?

нужно сделать выборку постов из таблицы
SELECT * FROM `wp_posts` WHERE post_type = 'news' LIMIT 5

но вывести это все надо по количсетву "сердечек" за последний месяц (они хранятся в таблице wp_like_post)
Структура wp_like_post
Nz8VYui.png
  • Вопрос задан
  • 2308 просмотров
Пригласить эксперта
Ответы на вопрос 2
@Nc_Soft
SELECT COUNT(*) as c, post_id FROM wp_posts 
WHERE post_type = 'news' AND time BETWEEN '2015-01-01' AND '2015-01-31 23:59:59'
GROUP BY post_id 
ORDER BY c DESC
LIMIT 5

Получили 5 идишников постов + число сердечек, вторым запросом получаем эти посты и выводим.
Ответ написан
Комментировать
MrBoriska
@MrBoriska
Пэхэпист самоучка, Питоност по Лутцу. C++
Нажмите на один из заголовков столбцов в PhpMyAdmin (раз уж скриншот из неё показываете) и увидите запрос, согласно которому СУБД показала вам отсортированные данные.

а вообще за это отвечает конструкция:

ORDER BY `name_field` DESC

Где name_field это имя столбца по которому сортировать, а DESC или ASC управляют порядком сортировки(по возрастанию, по убыванию)

UPD:
А чтобы за промежуток времени, используйте BETWEEN, как показал Nc_Soft
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы