У меня есть 3 таблицы (пользователь, отношение и user_type) с этими данными (соответствующими):
USER TABLE:
id, username, avatar, user_type_id
RELATIONSHIP TABLE:
id, user_id1, user_id2, relationship_points
USER_TYPE
id
Я пытаюсь создать одну запись для каждого отношения, поэтому пользователь с идентификатором «1» может быть в отношениях user_id1 ИЛИ user_id2, поэтому мне не нужно дублировать ненужные данные.
Я уже создал (спасибо другому StackOverflow answer) запрос для выбора всех сведений об отношениях от пользователя, но только если его идентификатор находится в «user_id1».
SELECT
r.id AS relationship_id,
r.relationship_points AS points,
u.username AS username,
u.avatar_url AS avatar
FROM
relationship AS r
INNER JOIN
user AS u
ON
r.user_id2 = u.id
INNER JOIN
user_type AS t
ON
u.user_type_id = t.id
WHERE
r.user_id1 = ?
Но, как видите, если пользователь находится в «user_id2», это не работает.
Я знаю, что мог бы сделать еще один запрос, но я думаю, что это «простой, ленивый» способ, и я хотел бы узнать, как это сделать в одном запросе.