Back to questions
СБЕР
Middle
5
Нужна ли связующая таблица между users и promo_codes?
Companies where asked
Answer from AI
sobes.tech AI
Связующая таблица между users и promo_codes нужна, если между пользователями и промокодами существует отношение «многие ко многим». Например, если один пользователь может использовать несколько промокодов, и один промокод может быть использован несколькими пользователями.
Если же каждый промокод привязан только к одному пользователю, или наоборот, то связующая таблица не нужна — достаточно добавить внешний ключ в одну из таблиц.
Пример связующей таблицы:
CREATE TABLE user_promo_codes (
user_id INT,
promo_code_id INT,
used_at TIMESTAMP,
PRIMARY KEY (user_id, promo_code_id),
FOREIGN KEY (user_id) REFERENCES users(id),
FOREIGN KEY (promo_code_id) REFERENCES promo_codes(id)
);