Помогите составить sql запрос: последняя новость в каждой категории

xriby

Новичок
Помогите составить sql запрос: последняя новость в каждой категории

Есть таблица новостей news, например: id, title, link, pubdate, content_news, category_id
И таблица категорий categories: id, category

Помогите составить sql запрос, который вытаскивает одну последнюю новость по дате pubdate для каждой категории category_id.
Т.е. из записей новостей news нужно получить по одной последней новости по дате из всех категории новостей.
 

Wicked

Новичок
я бы рекомендовал сделать денормализацию бд: при каждом апдейте(создании, удалении) новости из категории ищем последнюю новость в этой категории и ставим ей флаг is_last = 1. Остальным ставим нули. Тогда выборка становится тривиальной и потенциально очень быстрой.
 

prolis

Новичок
[sql]
select news.*,categories.category from news, categories,
(
select max(id) as id from news group by category_id
) t
where
news.category_id=categories.id
and news.id=t.id
[/sql]
 

zerkms

TDD infected
Команда форума
Wicked
или может прям категорию ссылать на последнюю новость?
 
Сверху