2014-02-25 102 views
0

insert into friends (user_id1,user_id2) select user_id from user where UserName='summer'or UserName='winter' 這給出了一個錯誤。我想將'summer'的user_id插入user_id1和'winter'的user_id到user_id2中。請幫忙?SQL查詢...我需要將table1的同一列中的2個值插入到table2的2個不同列中

+0

你需要改變你的SELECT子句,以獲得完成了。現在,你只是通過你的SELECT返回一個值,這導致了錯誤。 – Incognito

回答

0

選擇必須有相同數量的插入列的,因此:

INSERT INTO friends (user_id1,user_id2) 
SELECT (SELECT user_id FROM user where UserName='Summer') AS user_id1, (SELECT user_id FROM user WHERE UserName='Winter') AS user_id2 

應該做的伎倆

0
insert into friends (user_id1,user_id2) 
select user_id, -1 from user where UserName='summer' 

update friends 
set user_id2 = (select user_id from user where UserName='winter') 
where user_id2 = -1 
0
INSERT INTO table2 (user_id1,user_id2) 
SELECT 
    (SELECT UserName 
    FROM table1 
    WHERE UserName='Summer') AS user_id1, 

    (SELECT UserName 
    FROM table1 
    WHERE UserName='Winter') AS user_id2 

SQL FIDDLE

相關問題