MySQL INSERT INTO ... SELECT抛出错误1064

iop*_*ner 4 mysql select insert

尝试复制表中的某些行,但只需将ssreportid列从4 更改为6:

INSERT INTO ssreportparticipant (ssreportid, sssurveyparticipantid)
VALUES
SELECT 6, sssurveyparticipantid FROM ssreportparticipant 
WHERE ssreportid = 4

错误说"select 6,..."附近的#1064但是如果我只运行select子句,它会完美地选择记录,ssreportid列中的新id为6 .

该表有一个名为ssreportparticipantid的主键,并且在(ssreportid,sssurveyparticipantid)上有一个唯一键.请注意,select子句创建具有唯一键对的新记录,因此这不是问题.我试过在select子句周围放置括号,甚至为表使用两个别名,没有快乐.

使用服务器版本5.0.45.

请告诉我,程序员疲劳让我错过了逗号或其他东西.

谢谢,

-Josh

ybo*_*ybo 8

我认为你应该删除"VALUES"