У меня есть такая структура таблицы
Table1
PersonID, referrer
Table2
Event_A_ID, PersonID, status
Таблица3
Event_B_ID, PersonID, status
Я хочу получить статус события для каждого из таблицы один с referrer=X
, присоединив все таблицы событий, такие как Event_A...K
и проверив PersonID. Поскольку люди могут появляться в нескольких мероприятиях, у нас могут быть такие случаи, как
PersonID=1001, EventA_ID, referrer=X, status
PersonID=1001, EventB_ID, referrer=X, status
PersonID=1001, EventK_ID, referrer=X, status
PersonID=1002, ...
PersonID=1003, ...
Но я не уверен, как присоединиться ко всем таблицам событий, так как идентификаторы могут быть дубликатами (и являются желательными).
Я пытался сделать отдельный выбор и использовать синтаксис in
...
WHERE 1=1
AND PersonID IN (SELECT PersonID from table1 where referrer=X)
Но потом я понял, что все прежде будет совокупностью событий.
Должен ли я начать с SELECT из таблицы 1? Сначала выберите действительные идентификаторы, а затем выберите из событий после? Если да, то как мне присоединиться? Я чувствую, что идеально выглядит как объединение всех таблиц событий, а затем выбираю