ИЛИ, как известно, плохие исполнители.Вместо этого вы можете попробовать UNION:
SELECT a.*
FROM USER_RELATIONSHIP a
WHERE a.requesting_user_id = '1'
AND a.requested_user_id = '2'
UNION
SELECT b.*
FROM USER_RELATIONSHIP b
WHERE b.requesting_user_id = '2'
AND b.requested_user_id = '1'
UNION удалит дубликаты;UNION ALL
не будет (и быстрее для него).
Если есть какие-либо столбцы, которые вы не используете, их не должно быть в запросе.
Индексированиедолжно быть включено:
- requestting_user_id
- required_user_id
... либо по отдельности, либо по одному составному индексу, но вам придется проверить, какойработает лучше всего.