← К оглавлению занятия
⚡ Кратко: повторение
- Связи: 1:1, 1:N, M:N через ключи.
JOIN — по ключу; UNION — по строкам.
LEFT JOIN сохраняет левую таблицу целиком.
📖 Типы связей
| Тип | Описание | Пример |
| Один к одному (1:1) |
Каждой записи в одной таблице соответствует не более одной записи в другой. |
employees ↔ employee_details |
| Один ко многим (1:N) |
Одной записи соответствует несколько записей в другой таблице. |
customers → orders |
| Многие ко многим (M:N) |
Записям в обеих таблицах соответствует несколько записей друг друга. |
orders ↔ products через order_details |
📖 Ключи
Первичный ключ (Primary Key)
- Уникально идентифицирует строку.
- Не допускает
NULL.
- Обычно неизменяем.
Внешний ключ (Foreign Key)
- Связывает таблицу с первичным ключом другой таблицы.
- Обеспечивает ссылочную целостность.
📖 ER-диаграмма
Графическое представление структуры базы данных:
- Сущности — прямоугольники (таблицы).
- Атрибуты — свойства сущностей (столбцы).
- Связи — линии между сущностями с указанием типа.
📖 JOIN
| Оператор | Результат |
INNER JOIN | Только совпадающие строки обеих таблиц. |
LEFT JOIN | Все строки левой таблицы + совпадения справа. |
RIGHT JOIN | Все строки правой таблицы + совпадения слева. |
CROSS JOIN | Декартово произведение. |
FULL JOIN | Все строки обеих таблиц (не в MySQL). |
📖 UNION и UNION ALL
- Объединяют результаты нескольких
SELECT.
- Количество столбцов и типы должны совпадать.
UNION удаляет дубликаты; UNION ALL — нет.