У меня есть две таблицы с именами users
и requests
, структурированные следующим образом:
пользователи:
+----+----------+------------------------+
| id | name | email |
+----+----------+------------------------+
| 1 | super | super@test.com |
+----+----------+------------------------+
| 2 | david | david@test.com |
+----+----------+------------------------+
| 3 | smith | smith@test.com |
+----+----------+------------------------+
| 4 | philip | philip@test.com |
+----+----------+------------------------+
запросы:
+----+---------+----------------------+
| id | inviter | email |
+----+---------+----------------------+
| 1 | 1 | david@test.com |
+----+---------+----------------------+
| 2 | 2 | smith@test.com |
+----+---------+----------------------+
| 3 | 2 | philip@test.com |
+----+---------+----------------------+
Теперь я хочу объединить эти две таблицы, чтобы получить следующие данные:
+----+----------+------------------------+-----------+
| id | name | email | inviter |
+----+----------+------------------------+-----------+
| 1 | super | super@test.com | null |
+----+----------+------------------------+-----------+
| 2 | david | david@test.com | super |
+----+----------+------------------------+-----------+
| 3 | smith | smith@test.com | david |
+----+----------+------------------------+-----------+
| 4 | philip | philip@test.com | david |
+----+----------+------------------------+-----------+
Две таблицы будут объединены по атрибуту email
. И поле inviter
в результирующей таблице - это имя пользователя для соответствующей id
, хранящейся в requests
таблице под атрибутом inviter
.
Я написал этот запрос
select users.id as id, name, users.email as email, name, inviter
from users
left join requests on users.email = requests.email
, который производит следующий результат
+----+--------+-----------------+--------+---------+
| id | name | email | name | inviter |
+----+--------+-----------------+--------+---------+
| 2 | david | david@test.com | david | 1 |
| 3 | smith | smith@test.com | smith | 2 |
| 4 | philip | philip@test.com | philip | 2 |
| 1 | super | super@test.com | super | NULL |
+----+--------+-----------------+--------+---------+
Может ли кто-нибудь помочь мне написать запрос для получения данных по назначению?