Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Как сделать четвертной запрос? (Артём) 18/12/2011 - 22:02:59
      Re: Как сделать четвертной запрос? (Akina) 19/12/2011 - 18:18:31



From: Артём - 18/12/2011 - 22:02:59
Subject:Как сделать четвертной запрос?
-----------------
Привет всем! Прошу помощи.

Колледжи

CREATE TABLE IF NOT EXISTS `ed_college` (
`id` int(11) NOT NULL default '0',
`short_name` varchar(100) NOT NULL default '',
)


СПЕЦИАЛЬНОСТИ колледжей. Содержит id своего колледжа.

CREATE TABLE IF NOT EXISTS `ed_college_specialty` (
`id` int(11) NOT NULL auto_increment,
`college_id` int(11) NOT NULL default '0' COMMENT 'id колледжа',
)


ПРОФИЛИ - содержит названия профилей

CREATE TABLE IF NOT EXISTS `ed_college_profiles` (
`id` int(11) NOT NULL auto_increment,
`name` varchar(50) NOT NULL default '',
)


СВЯЗУЮЩАЯ ТАБЛИЦА - для каждой новой специальности создаётся запись, содержащая id специальности и id профиля, которому она соответствует. У одной специальности может быть много профилей. Поэтому и была введена эта таблица

CREATE TABLE IF NOT EXISTS `ed_college_profiles_` (
`id` int(11) NOT NULL auto_increment,
`spec_id` int(11) NOT NULL default '0' COMMENT 'специальность',
`prof_id` int(11) NOT NULL default '0' COMMENT 'профиль',
)


Думаю, из этой схемы всё ясно.
Моя задача сделать так чтобы одним запросом определить сколько всего колледжей, у которых есть специальности.
И в этом же запросе определить название профиля, которому они принадлежат.

Должно выглядеть так:

Авицация и космонавтика (5 колледжей)
Медицина (3 колледжа)

Я столкнулся с проблемой. Если один и тот же колледж содержит разные специальности с одинаковым профилем, то колледж считается дважды. А так быть не должно. Мне нужно в каждом профиле видеть один колледж только один раз.

Задача сложная для понимания, так что на ответ почти не надеюсь.


[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
40835



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |