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

Крот

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

Всем привет.

Подскажите пожалуйста, реально ли выполнить такой запрос без создания функции?

Структура таблицы posts

post_id, INT, PRIMARY
category_id, INT

Мне нужно выбрать ПО ОДНОМУ посту из каждой категории из списка.

Вот таким запросом мы выбираем все посты...
SELECT post_id, category_id FROM posts WHERE category_id IN (1,2,3,4,5) ORDER BY RAND();

А мне нужно именно по одному из каждой категории в списке.

PS: Насчет ORDER BY RAND() - знаю, рекоммендуют не использовать, но у меня в реальном случае добавляется еще куча условий, который сводят работу RAND() над 10-20 строками максимум - поэтому допустимо использовать эту ф-ию в моём случае.

Спасибо.
 

Фанат

oncle terrible
Команда форума
group by категории я думаю, поможет

-~{}~ 14.10.09 14:05:

только непонятно, при чем здесь ордер бай ранд
 

Крот

Новичок
Сорри, немного неправильно сформулировал вопрос...

Мне нужно рандомно выбирать по одному посту из каждой категории в списке.
Нашел ответ вот тут http://forums.mysql.com/read.php?20,227102,227102#msg-227102

Спасибо!
 
Сверху