Встречается на 5% собеседований по Analytics
Может ли быть одно значение и первичным, и внешним ключом
Да, значение может быть одновременно и первичным (Primary Key, PK), и внешним ключом (Foreign Key, FK). Это распространённая ситуация, особенно в отношениях один-к-одному или при наследовании сущностей.
Пример:
Таблица users с PK user_id, и таблица user_profiles, где user_id — это и PK (уникальный идентификатор профиля), и FK (ссылка на пользователя).
sql
CREATE TABLE users (
user_id INT PRIMARY KEY,
username VARCHAR(50) NOT NULL
);
CREATE TABLE user_profiles (
user_id INT PRIMARY KEY,
bio TEXT,
FOREIGN KEY (user_id) REFERENCES users(user_id)
);Нюансы:
- Обеспечивает целостность данных: профиль не может существовать без пользователя.
- Удобно для расширения сущностей без дублирования данных.
- В некоторых БД (например, MySQL с InnoDB) FK должен быть проиндексирован, но PK уже подходит.

Софи собрала все вопросы. Тренируйся и получай
офферы быстрее!
офферы быстрее!
Попробовать бесплатно
Следующий вопрос
Это единственный вопрос по вашему фильтру
как отвечать на вопрос
пример собеседования
фреймворки на собеседовании
типичные вопросы junior
интервью вопросы и ответы