2014-12-21 199 views
1

該查詢不起作用。 我想從player.item_proto中插入所有vnumMysql子查詢從多個數據庫返回多於1行

我該怎麼做?

INSERT INTO durance (vnum, max_durance, price_per_durance) 
VALUES(
    (SELECT vnum 
    FROM player.item_proto 
    WHERE limitvalue0 >= 10 
    AND type in (1,2)), 
    100, 50) 

錯誤:1242 - 子查詢返回多個1行

回答

1

忘記values,使用insert . . . select

INSERT INTO durance(vnum, max_durance, price_per_durance) 
    select vnum, 100, 50 
    from player.item_proto 
    where limitvalue0 >= 10 and type in (1,2); 

這是假設你真的想所有匹配的行插入durance

+0

啊好吧,我現在understad,謝謝 –

0

你不應該使用術語VALUES
語法INSERT INTO table (columns) SELECT ... FROM ...