将in子查询的结果插入到单独的列中

3pvhb19x  于 2021-06-20  发布在  Mysql
关注(0)|答案(1)|浏览(334)

我有一张table follower 以及 followee 它能容纳两个人 user_id 价值观。 user_id Map到 username 我需要找到匹配的 user_id 从供应的 username .
为了得到 user_ids 我有疑问

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

我要做的是将这些值插入follower表,我想首先

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

但是,这个查询会导致两个问题1)如何确保正确的结果是follower和followere 2)如何获取 SELECT 语句并将其转换为mysql将接受作为插入值的格式?

2guxujil

2guxujil1#

我不确定您的表结构如何,但是如果username1是follower的名称,username2是followere的名称,那么这个查询应该可以帮助您:

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

相关问题