2012-06-30 136 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`