miha25
Новичок
Здравствуйте!
Подскажите как можно оптимизировать такой запрос:
Таблица №1:
`id` int(11) NOT NULL AUTO_INCREMENT,
`id_category` smallint(6) NOT NULL,
`user_id` int(11) NOT NULL DEFAULT '0',
`type` enum('s','p','u','o','a','v','r') DEFAULT 'p',
`autor` varchar(255) NOT NULL,
`title` varchar(255) NOT NULL,
`email` varchar(255) NOT NULL,
`subscribe` enum('yes','no') CHARACTER SET cp1251 NOT NULL DEFAULT 'yes',
`city` varchar(255) NOT NULL,
`city_id` smallint(6) DEFAULT NULL,
`url` varchar(255) NOT NULL,
`click` smallint(6) NOT NULL DEFAULT '0',
`contacts` text NOT NULL,
`text` text NOT NULL,
`price` int(11) NOT NULL DEFAULT '1',
`price_val` text NOT NULL,
`video` varchar(128) NOT NULL,
`hits` int(11) NOT NULL DEFAULT '0',
`old_mess` enum('new','old') NOT NULL DEFAULT 'new',
`checked` enum('yes','no','edit') NOT NULL DEFAULT 'no',
`checkbox_top` smallint(1) NOT NULL DEFAULT '0',
`top_time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`send_notice_vip_sms` smallint(1) NOT NULL DEFAULT '0',
`checkbox_select` smallint(1) NOT NULL DEFAULT '0',
`select_time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`send_notice_select_sms` smallint(1) NOT NULL DEFAULT '0',
`tags` varchar(255) NOT NULL,
`send_notice_day` smallint(1) NOT NULL DEFAULT '0',
`time_delete` smallint(6) NOT NULL DEFAULT '30',
`date_add` datetime NOT NULL,
`ip` text CHARACTER SET cp1251 NOT NULL,
`gmaps` varchar(255) NOT NULL,
`cat_fields` text,
PRIMARY KEY (`id`),
KEY `id_category` (`id_category`),
KEY `city_id` (`city_id`),
KEY `user_id` (`user_id`),
KEY `email` (`email`),
KEY `old_mess` (`old_mess`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 PACK_KEYS=0 CHECKSUM=1 AUTO_INCREMENT=105660 ;
Таблица №2:
CREATE TABLE IF NOT EXISTS `jb_photo` (
`id_photo` int(11) NOT NULL AUTO_INCREMENT,
`id_message` int(11) NOT NULL DEFAULT '0',
`photo_name` varchar(255) NOT NULL,
PRIMARY KEY (`id_photo`),
KEY `id_message` (`id_message`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=53364 ;
Заранее благодарен.
Подскажите как можно оптимизировать такой запрос:
PHP:
$vip=mysql_query("SELECT jb_board.id, jb_board.id_category, jb_board.title, jb_board.city, jb_board.text, jb_photo.photo_name FROM jb_board LEFT JOIN jb_photo ON jb_board.id = jb_photo.id_message WHERE jb_board.old_mess='old' AND jb_board.checkbox_top=1 GROUP by jb_board.id ORDER by RAND() LIMIT 10");
`id` int(11) NOT NULL AUTO_INCREMENT,
`id_category` smallint(6) NOT NULL,
`user_id` int(11) NOT NULL DEFAULT '0',
`type` enum('s','p','u','o','a','v','r') DEFAULT 'p',
`autor` varchar(255) NOT NULL,
`title` varchar(255) NOT NULL,
`email` varchar(255) NOT NULL,
`subscribe` enum('yes','no') CHARACTER SET cp1251 NOT NULL DEFAULT 'yes',
`city` varchar(255) NOT NULL,
`city_id` smallint(6) DEFAULT NULL,
`url` varchar(255) NOT NULL,
`click` smallint(6) NOT NULL DEFAULT '0',
`contacts` text NOT NULL,
`text` text NOT NULL,
`price` int(11) NOT NULL DEFAULT '1',
`price_val` text NOT NULL,
`video` varchar(128) NOT NULL,
`hits` int(11) NOT NULL DEFAULT '0',
`old_mess` enum('new','old') NOT NULL DEFAULT 'new',
`checked` enum('yes','no','edit') NOT NULL DEFAULT 'no',
`checkbox_top` smallint(1) NOT NULL DEFAULT '0',
`top_time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`send_notice_vip_sms` smallint(1) NOT NULL DEFAULT '0',
`checkbox_select` smallint(1) NOT NULL DEFAULT '0',
`select_time` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
`send_notice_select_sms` smallint(1) NOT NULL DEFAULT '0',
`tags` varchar(255) NOT NULL,
`send_notice_day` smallint(1) NOT NULL DEFAULT '0',
`time_delete` smallint(6) NOT NULL DEFAULT '30',
`date_add` datetime NOT NULL,
`ip` text CHARACTER SET cp1251 NOT NULL,
`gmaps` varchar(255) NOT NULL,
`cat_fields` text,
PRIMARY KEY (`id`),
KEY `id_category` (`id_category`),
KEY `city_id` (`city_id`),
KEY `user_id` (`user_id`),
KEY `email` (`email`),
KEY `old_mess` (`old_mess`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 PACK_KEYS=0 CHECKSUM=1 AUTO_INCREMENT=105660 ;
Таблица №2:
CREATE TABLE IF NOT EXISTS `jb_photo` (
`id_photo` int(11) NOT NULL AUTO_INCREMENT,
`id_message` int(11) NOT NULL DEFAULT '0',
`photo_name` varchar(255) NOT NULL,
PRIMARY KEY (`id_photo`),
KEY `id_message` (`id_message`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=53364 ;
Заранее благодарен.