1.87M
Категория: ПрограммированиеПрограммирование

Первичный ключ

1.

2.

3.

Первичный ключ два столбца? А так можно?

4.

5.

6.

Еще один пример.
Если имя супер героя может совпадать то имя+сила делают героя уникальным
поэтому тут можно использовать составной ключ

7.

Составной ключ.
Зависимые столбцы name -> power
Ответ
Есть ли тут проблемные места? Найти зависимости.

8.

Частичная функциональная зависимость
Если измениться адрес у магазина то нужно будет менять адрес у всех магазинов
по этому id. Поэтому проще адрес вынести в отдельную таблицу.

9.

10.

11.

12.

Как бы вы преобразовали таблицы
Что бы получилась 2НФ?

13.

Да и цвет игрушки нужно бы записывать в
Информации о игрушке

14.

3НФ
Реализует 2нф
И не имеет зависимостей
Курс id PK
Имя курса
Преподаватель
Телефон преподавателя
Что произойдет при изменение данных в столбцах
Имя курса
Преподаватель
Телефон преподавателя

15.

Зачем
AS?

16.

17.

Было

18.

19.

Создать БД
Две таблицы
5
Bob

20.

Перекрестное соединение
CROSS JOIN
Соединяет первую таблицу ко всем вариантом из второй таблицы

21.

22.

23.

Свяжем таблицы и удалим лишние данные

24.

25.

неэквивалентное соединение

26.

неэквивалентное соединение

27.

естественное соединение

28.

Встроенные запросы

29.

Доделать!!!
1) Вывод все таблицы через inner join
2) Вывод всех студентов у кого преподаватель Вася Пупкин
3) Вывод всех студентов у кого преподаватель из DepartmentId=5 и возраст больше 45
4) Вывод всех студентов у кого преподаватель родился в феврале
5) Вывод всех студентов у кого оценка по физкультуре пять
6) Вывод всех студентов из группы PVO11
7) Вывод всех преподавателей которые преподают Физику
8) Вывод всех преподавателей которые преподают физику и им больше 25 лет
9) Вывод всех студентов у кого домент в mail = @gmail.ru
10) Сколько получают стипендии все студенты
11) Средняя арифметическая всех стипендий
12) Средняя арифметическая оценка по всем предметам у Boba
13) Вывести всех студентов которые не в группе PVO11
English     Русский Правила