2012-06-30 5 views
1
INSERT INTO `competitions` (`name`) VALUES SELECT `name` FROM `competitions` 

Выдает следующую ошибку:INSERT INTO SELECT, не работает

You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'SELECT name FROM competitions ' at line 1

Я, вероятно, с видом на что-то тривиальное, но я действительно не понимаю, что я делаю неправильно здесь.

+4

удалить 'VALUES'. См. Синтаксис: http://dev.mysql.com/doc/refman/5.5/en/insert.html – biziclop

ответ

4

Правильный синтаксис

INSERT INTO `competitions` (`name`) SELECT `name` FROM `competitions` 

См: INSERT ... SELECT Syntax

+1

+1 для предоставления ссылки на документы –

2

Удалить VALUES из вашего запроса!

Синтаксис этого оператора:

INSERT INTO tbl_temp2 (fld_id) 
    SELECT tbl_temp1.fld_order_id 
    FROM tbl_temp1 WHERE tbl_temp1.fld_order_id > 100; 

правый синтаксис будет:

INSERT INTO `competitions` (`name`) 
    SELECT `name` FROM `competitions`