Новые сообщения [новые:0]
Дайджест
Горячие темы
Избранное [новые:0]
Форумы
Пользователи
Статистика
Статистика нагрузки
Мод. лог
Поиск
|
20.06.2003, 14:29
|
|||
---|---|---|---|
|
|||
Помогите построить запрос |
|||
#18+
Есть таблицы: Группы товаров: CREATE TABLE `p_grp` ( `id` int(11) NOT NULL auto_increment, `title` varchar(255) NOT NULL default '', `parent_id` int(11) NOT NULL default '0', `top_ip` int(11) NOT NULL default '0', ..., KEY `id` (`id`,`parent_id`) ) TYPE=MyISAM; Товары: CREATE TABLE `p_item` ( `id` bigint(20) NOT NULL auto_increment, `title` varchar(255) NOT NULL default '', ..., KEY `id` (`id`) ) TYPE=MyISAM; Связка: CREATE TABLE `p_link` ( `id` bigint(20) NOT NULL auto_increment, `item_id` int(11) NOT NULL default '0', `grp_id` int(11) NOT NULL default '0', PRIMARY KEY (`id`), KEY `item_id` (`item_id`,`grp_id`) ) TYPE=MyISAM; Каждый товар может принадлежать произвольному количеству групп. Возможно ли получить одним запросом товары определенной группы и при этом узнать о каждом товаре, к какой группе он принадлежит помимо той, по которой мы выбираем? На ум приходит только получить список товаров этой группы, а потом в цикле получать другие группы каждого товара. Но БД планируеться достаточно большая, так что это может загнуть сервер :( ... |
|||
:
Нравится:
Не нравится:
|
|||
|
20.06.2003, 15:33
|
|||
---|---|---|---|
Помогите построить запрос |
|||
#18+
Простой способ сделать LEFT JOIN таблицы самой на себя и посмотреть, входит или нет еще в другую группу. А так лучше при изменении сведений о товоре, заносить в дополнительное поле информацию о вхождении в другую группу. Повысишь быстродействие. ... |
|||
:
Нравится:
Не нравится:
|
|||
|
|
start [/forum/topic.php?fid=47&mobile=1&tid=1855960]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
57ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
40ms |
get tp. blocked users: |
2ms |
others: | 274ms |
total: | 414ms |
0 / 0 |