Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/arrays/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 将IN子查询的结果插入到单独的列中_Mysql_Insert - Fatal编程技术网

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

Mysql 将IN子查询的结果插入到单独的列中,mysql,insert,Mysql,Insert,我有一个包含follower和followee的表,其中包含两个用户id值 user\u ids映射到username,我需要从提供的username中获取匹配的user\u ids 要获取用户ID,我需要查询 SELECT user_id FROM user WHERE username IN (username1, username2) 我想做的是将这些值插入到follower表中,我想从 INSERT INTO followers (follower, followee) ( SELEC

我有一个包含
follower
followee
的表,其中包含两个
用户id

user\u id
s映射到
username
,我需要从提供的
username
中获取匹配的
user\u id
s

要获取
用户ID
,我需要查询

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) 我如何确保正确的结果是跟随者和跟随者
2) 如何获取
SELECT
语句的结果并将其转换为mysql将接受作为插入值的格式?

我不确定您的表结构如何,但如果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
插入追随者(追随者,追随者)
选择follower.user\u id,followee.user\u id
从用户到跟随者
内部加入用户作为followee ON(follower.user\u id followee.user\u id)
其中follower.username=username1
和followee.username=username2

你能不能提供一些样本数据/预计我会试试。谢谢@David,我想我把事情复杂化了。