У меня есть 2 таблицы, подобные этой:
TableA
+----+------- --+
| id | name |
+----+----------+
| 1 | Max |
| 2 | Susan |
| 3 | Tom |
+----+----------+
TableB
+----+----------+----------+
| id | fromUser | toUser |
+----+----------+----------+
| 1 | 1 | 3 |
| 2 | 1 | 2 |
| 3 | 3 | 1 |
+----+----------+----------+
Теперь я хочу получить Tom
в результате, потому что Max
дает Tom
, а Tom
дает Max
.
Я знаю Max's
ID.
Я пытался:
select a.*, b.fromUser from TableA a
INNER JOIN TableB b
ON b.fromUser = a.id OR b.toUser = a.id
WHERE b.fromUser = 1 AND a.id =! 1
и множество вариантов этого запроса. Но я либо получил неправильные результаты, либо слишком много!