Шустрый

Профиль
Группа: Участник
Сообщений: 51
Регистрация: 18.11.2006
Репутация: нет Всего: нет
|
Запрос:Код | SELECT CONCAT( '/photos/', pgc.pg_cat_name, '/' ) AS pg_cat_path, pgc.pg_cat_title, CONCAT( '/photos/', pgc.pg_cat_name, '/', pg.gallery_name, '/' ) AS gallery_path, pg.gallery_title, pg.gallery_desc, p.report_id, p.report_num, p.file_type, p.report_preview, UNIX_TIMESTAMP(pg.date_add) AS date_add, DATE_FORMAT(pg.time_add, '%H:%i') AS time_add FROM reports_galleries AS pg LEFT JOIN reports_galleries_cats AS pgc ON (pg.pg_cat_id = pgc.pg_cat_id) LEFT JOIN reports_types AS pt ON (pgc.pg_cat_type = pt.type_id) LEFT JOIN reports AS p ON ( p.report_status = 1 AND p.report_id IN (SELECT MAX(p2.report_id) FROM reports AS p2 WHERE p2.gallery_id = pg.gallery_id) ) WHERE pg.gallery_status = 1 AND pg.gallery_access = 0 AND pgc.pg_cat_type = '1' GROUP BY pg.gallery_id ORDER BY pg.gallery_id DESC, p.report_id DESC
|
Таблицы:Код | CREATE TABLE `reports` ( `report_id` int(11) NOT NULL auto_increment, `report_num` int(11) NOT NULL default '0', `report_status` tinyint(1) NOT NULL default '0', `gallery_id` int(11) NOT NULL default '0', `file_type` varchar(5) NOT NULL default '', `report_preview` varchar(255) NOT NULL default '', `report_views` bigint(20) NOT NULL default '0', `rating` int(11) NOT NULL default '0', `rating_voters` int(11) NOT NULL default '0', `rating_vip` int(11) NOT NULL default '0', `rating_voters_vip` int(11) NOT NULL default '0', `comments_lock` tinyint(1) NOT NULL default '0', `date_add` date NOT NULL default '0000-00-00', `time_add` time NOT NULL default '00:00:00', PRIMARY KEY (`report_id`) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 ;
CREATE TABLE `reports_galleries` ( `gallery_id` int(11) NOT NULL auto_increment, `type_id` int(11) NOT NULL default '0', `pg_cat_id` int(11) NOT NULL default '0', `place_id` int(11) NOT NULL default '0', `user_id` int(11) NOT NULL default '0', `photographer_id` int(11) NOT NULL default '0', `photographer_name` varchar(100) NOT NULL default '', `gallery_access` tinyint(1) NOT NULL default '0', `gallery_pass` varchar(50) NOT NULL default '', `gallery_status` tinyint(1) NOT NULL default '0', `gallery_subscribe` tinyint(1) NOT NULL default '0', `gallery_name` varchar(100) NOT NULL default '', `gallery_title` varchar(100) NOT NULL default '', `gallery_desc` text NOT NULL, `email_lock` tinyint(1) NOT NULL default '0', `comments_lock` tinyint(1) NOT NULL default '0', `rating` int(11) NOT NULL default '0', `rating_voters` int(11) NOT NULL default '0', `date_add` date NOT NULL default '0000-00-00', `time_add` time NOT NULL default '00:00:00', PRIMARY KEY (`gallery_id`) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 ;
CREATE TABLE `reports_galleries_cats` ( `pg_cat_id` int(11) NOT NULL auto_increment, `pg_cat_type` tinyint(1) NOT NULL default '0', `pg_cat_faces` tinyint(1) NOT NULL default '0', `pg_cat_name` varchar(100) NOT NULL default '', `pg_cat_title` varchar(100) NOT NULL default '', PRIMARY KEY (`pg_cat_id`) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 ;
CREATE TABLE `reports_types` ( `type_id` int(11) NOT NULL auto_increment, `type_name` varchar(100) NOT NULL default '', `type_title` varchar(100) NOT NULL default '', `type_title_m` varchar(50) NOT NULL default '', `file_title` varchar(100) NOT NULL default '', `file_title_2` varchar(50) NOT NULL default '', PRIMARY KEY (`type_id`) ) ENGINE=MyISAM DEFAULT CHARSET=cp1251 ;
|
Сейчас при выполнении этого запроса сервер возвращает "You probably tried to upload too large file." Структуру менять нельзя... и хотелось бы сделать все в одном запросе. А нужно мне вытащить запись из reports_galleries (галереи), вместе с последней записью из reports (файлы галереи). Файлы галереи бывают нескольких типов (в данном случае это 'photos'). Типы файлов хранятся в reports_types.
|