Зачем вам нужна эта новая таблица person_events
?
У вас уже есть таблица tickets
, сохраняющая соотношение между person
и events
.Таким образом, вы можете использовать следующий запрос, чтобы получить людей с соответствующей информацией о событии:
SELECT p.ID, e.ID, e.date
FROM tickets t
INNER JOIN person p ON t.person_id = p.ID
INNER JOIN events e ON t.event_id = e.ID
WHERE p.ID = 1
демо на dbfiddle.uk
Youтакже необходимо изменять данные в таблице person_events
каждый раз, когда вы что-либо изменяете в данных person
или events
.Таким образом, использование простого запроса (подобного приведенному выше) для нормализованной базы данных будет лучшим решением.