|
|
|
Связи и запросы в БД
|
|||
|---|---|---|---|
|
#18+
Здравствуйте, хочу сразу сказать я новичок в MySql,и буду рад всем кто ответит Задали мне на днях ДЗ по Базам Даних и у меня есть парочка вопросов Среда: MySQL Workbench 6.2 Задание: Есть таблица Person(email,first name,last name) (поле email - уникальное) Также есть еще две таблицы Курсы (Educational courses и Arts courses) Каждый курс имеет уникальное имя(name) и категорию(category). Пример Educational courses name - C# category - Programming Arts courses name - Opera-Sing category - Singing Я не понимаю как реализовать следующее(возможно свзязь один-ко-многим?): 1.Несколько из персон посещают курсы(таблицы Educational courses и Arts courses) 2.Персонаж не может посетить один и тот же курс дважди Затем нужно сделать пару запросов: 1. Выбрать имя всех существующих курсов по категории Код: sql 1. 2. 3. 4. 2. Найти человека который не посещает ни один курс 3. Найти только те категории что используются в курсах,те которие не используются пропустить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2015, 02:12:05 |
|
||
|
Связи и запросы в БД
|
|||
|---|---|---|---|
|
#18+
matviishynЯ не понимаю как реализовать следующее(возможно свзязь один-ко-многим?): 1.Несколько из персон посещают курсы(таблицы Educational courses и Arts courses) 2.Персонаж не может посетить один и тот же курс дваждиэто многие-ко-многим, делается как правило через дополнительную таблицу связи matviishynТакже есть еще две таблицы Курсы (Educational courses и Arts courses)А зачем 2 таблицы? Курсы и есть курсы, ну добавьте туда признак, какой это вид курсов... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2015, 06:46:31 |
|
||
|
Связи и запросы в БД
|
|||
|---|---|---|---|
|
#18+
tanglir, Сделал в результате три таблицы и соеденил их отношением многое-ко-многим Таблица Person(id person,email,first_name,last_name) Таблица Groups(id_group,name,category,courses) Таблица Distribution(id_person,id_group),id_person,id_group - внешние ключи В результате: 1.Несколько из персон посещают курсы(я соединяю по id_person и id_group) 2.Персонаж не может посетить один и тот же курс дважди(это тоже есть) Запросы 1. Выбрать имя всех существующих курсов по категории Код: sql 1. С остальными запросами еще проблема: 2. Найти человека который не посещает ни один курс 3. Найти только те категории что используются в курсах,те которие не используются пропустить ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2015, 14:17:22 |
|
||
|
Связи и запросы в БД
|
|||
|---|---|---|---|
|
#18+
3. Найти только те категории что используются в курсах,те которие не используются пропустить Тип category - enum(я специально добавил туда еще несколько имен и не привязывал их к курсу, и выводит верно, но я все же сомневаюсь) Код: sql 1. Результат: Код: sql 1. 2. 3. 4. 5. 6. Список всех категорий Код: sql 1. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2015, 14:37:51 |
|
||
|
Связи и запросы в БД
|
|||
|---|---|---|---|
|
#18+
2. Найти человека который не посещает ни один курс Код: sql 1. 2. 3. 4. Здесь вроде ок ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.02.2015, 15:07:16 |
|
||
|
|

start [/forum/topic.php?fid=47&tid=1833519]: |
0ms |
get settings: |
4ms |
get forum list: |
8ms |
check forum access: |
2ms |
check topic access: |
2ms |
track hit: |
45ms |
get topic data: |
6ms |
get forum data: |
1ms |
get page messages: |
21ms |
get tp. blocked users: |
1ms |
| others: | 205ms |
| total: | 295ms |

| 0 / 0 |
