Вот мои таблицы:
CREATE TABLE `articles` (
`id` int(10) unsigned not null auto_increment,
`author_id` int(10) unsigned not null,
`date_created` datetime not null,
PRIMARY KEY(id)
) ENGINE=InnoDB;
CREATE TABLE `article_contents` (
`article_id` int(10) unsigned not null,
`title` varchar(100) not null,
`content` text not null,
PRIMARY KEY(article_id)
) ENGINE=InnoDB;
CREATE TABLE `article_images` (
`article_id` int(10) unsigned not null,
`filename` varchar(100) not null,
`date_added` datetime not null,
UNIQUE INDEX(article_id, filename)
) ENGINE=InnoDB;
Каждая статья может иметь одно или несколько изображений, связанных с ней. Я бы хотел отобразить последние 40 написанных статей на странице вместе с последним изображением, связанным с этой статьей. Я не могу понять, как присоединиться к таблице article_images и получить только одну строку.
Изменить: важно, чтобы решение выполнялось хорошо. Решения, которые я видел до сих пор, которые используют производные таблицы, занимают минуту или больше для завершения.