2014-12-21 3 views
1

Запрос не работает. Я хочу вставить в durance все vnum от player.item_protoПодзапрос Mysql возвращает более 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 ...

Смежные вопросы