выберите x сообщений, независимо от количества строк внутренней категории - PullRequest
1 голос
/ 11 июля 2009

Таблица с сообщениями в блогах одной или нескольких категорий. Теперь я хочу выбрать 10 постов и иметь категории для каждого из постов. Это означает внутреннее объединение каждого поста в таблице пост-категории и т. Д.

Проблема: ограничение 10 дает только 10 строк (например, один пост с 10 категориями). Я хочу иметь 10 разных постов со всеми категориями для каждого поста (например, если у каждого поста будет 2 категории, он должен возвращать 20 строк).

1 Ответ

1 голос
/ 11 июля 2009

Вам нужно опубликовать определения таблиц, чтобы люди очень помогли ... но при условии, что у вас есть таблица "story" с полем "story_id" в качестве ее первичного ключа, и категории таблиц с внешним ключом для id рассказа Вы могли бы сделать это:

 select s.*,c.* 
 from story s 
 left outer join categories c 
      on c.story_id=s.story_id 
 where story_id in (select story_id from story order by pub_date desc limit 10)

Подвыбор вытянет 10 самых последних идентификаторов историй, после чего основной выбор выполнит внешнее соединение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...