Доброго времени суток!
Подскажите пожалуйста с реализацией выборки записей из БД так что бы выбирать и категории в которых они находятся. Одна и та же записиь может находится одновременно в нескольких категориях many to many (на сколько я понял)
--
-- Структура таблицы `catalog`
--
CREATE TABLE IF NOT EXISTS `catalog` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`visible` tinyint(1) NOT NULL DEFAULT '1',
`parent_id` tinyint(3) unsigned NOT NULL DEFAULT '0',
`position` int(11) unsigned NOT NULL DEFAULT '0',
`slug` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`),
FULLTEXT KEY `name` (`name`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=551 ;
--
-- Дамп данных таблицы `catalog`
--
INSERT INTO `catalog` (`id`, `name`, `visible`, `parent_id`, `position`, `slug`) VALUES
(1, 'Строительство', 1, 0, 1, 'stroitelstvo_stroimaterialy'),
(2, 'Деловые услуги', 1, 0, 2, 'delovye_uslugi'),
(3, 'Бытовые услуги и досуг', 1, 1, 3, 'bytovye_uslugi_dosug_turizm'),
(4, 'Транспорт и услуги', 1, 1, 4, 'transport_i_uslugi'),
(5, 'Дом, офис, зоотовары', 1, 0, 5, 'bytovye_tovary_elektronika_tovary_dlya_ofisa'),
(6, 'Одежда, обувь, белье, ткани, ковры', 1, 0, 6, 'odezhda_obuv_bele_tkani_kovry'),
(7, 'Общественное питание', 1, 0, 7, 'magaziny_predpriyatiya_torgovli_i_pitaniya'),
(8, 'Мебель', 1, 0, 8, 'mebel');
--
-- Структура таблицы `articles`
--
CREATE TABLE IF NOT EXISTS `articles` (
`id` int(11) unsigned NOT NULL AUTO_INCREMENT,
`name` varchar(255) NOT NULL,
`visible` tinyint(1) NOT NULL DEFAULT '1',
`number` int(11) unsigned NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `number` (`number`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 AUTO_INCREMENT=19 ;
--
-- Дамп данных таблицы `articles`
--
INSERT INTO `articles` (`id`, `name`, `visible`, `number`) VALUES
(16, 'default 1', 0, 48009);
INSERT INTO `articles` (`id`, `name`, `visible`, `number`) VALUES
(17, 'default 2', 0, 48010);
INSERT INTO `articles` (`id`, `name`, `visible`, `number`) VALUES
(18, 'default 3', 0, 48011);
-- --------------------------------------------------------
--
-- Структура таблицы `many_many`
--
CREATE TABLE IF NOT EXISTS `many_many` (
`catalogID` int(11) unsigned NOT NULL,
`articleID` int(11) unsigned NOT NULL
) ENGINE=InnoDB DEFAULT CHARSET=utf8;
--
-- Дамп данных таблицы `many_many`
--
INSERT INTO `many_many` (`catalogID`, `articleID`) VALUES
(3, 16),
(3, 17);
(4, 16);
(4, 17);
(4, 18);
-- --------------------------------------------------------
Собственно подскажите пожалуйста как мне выбрать все записи из БД и имена категорий в которых они хранятся? Что бы под каждой записью можно было вывести Категория: Бытовые услуги и досуг, Транспорт и услуги (например)
Отредактированно saylar_06 (21.07.2015 20:09:20)