如何用MySQL命令修复跨表插入数据的SQL语句问题?
修正你的SQL插入语句
你的问题出在试图用AND把两个独立的INSERT语句强行拼接在一起,这不符合SQL的语法规则。实际上我们可以用单次INSERT操作同时完成从participants表导入指定字段,以及给marks字段插入固定值90的需求。
正确的SQL语句:
INSERT INTO project_result (project_id, student_id, category, language, project_title, marks) SELECT project_id, student_id, category, language, project_title, 90 FROM participants;
简单解释:
- 我们在
INSERT的目标字段列表里加上了marks - 对应的
SELECT语句末尾直接追加固定值90,这样每一条从participants取出的记录,都会自动带上marks=90的属性,一次性插入到project_result表中
这种写法既符合SQL语法规范,又能高效完成你需要的批量导入+固定值插入的需求。
内容的提问来源于stack exchange,提问作者Md. Sakib al islam
相关产品推荐
相关产品推荐

