Вставка результата подзапроса IN в отдельные столбцы - PullRequest
0 голосов
/ 04 июня 2018

У меня есть таблица follower и followee, которая содержит два значения user_id.

user_id s сопоставлены с username, и мне нужно получить соответствующее user_ids из поставляемого username.

Чтобы получить user_ids, у меня есть запрос

SELECT user_id FROM user WHERE username IN (username1, username2)

Что я хочу сделать, это вставить эти значения в таблицу последователей, и я думаю,Я начинаю с

INSERT INTO followers (follower, followee) ( SELECT user_id FROM user WHERE username IN (username1, username2)
)

Тем не менее, этот запрос приводит к двум проблемам: 1) как убедиться, что верным результатом является подписчик и подписчик 2) как мне взять результат оператора SELECT и поставитьэто в формате, который MySQL принимает в качестве значений для вставки?

1 Ответ

0 голосов
/ 04 июня 2018

Я не уверен, как устроены ваши таблицы, но если username1 - это имя подписчика, а username2 - подписчика, этот запрос должен вам помочь:

INSERT INTO followers (follower, followee) 
SELECT follower.user_id, followee.user_id
FROM user AS follower 
INNER JOIN user AS followee ON (follower.user_id <> followee.user_id)
WHERE follower.username = username1
AND followee.username = username2
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...