我想将列从一个表复制到另一个表,当我想复制“AllInOne”时这不是问题。我会写:INSERT INTO table2 SELECT * FROM table1 WHERE condition; 如果我只需要复制部分列,我会写:INSERT INTO table2 (column1, column2, column3, ...) SELECT column1, column2, column3, ... FROM table1 WHERE condition;但如果我需要复制所有列,但我需要两或三列带有我从中获取的指定 PHP 变量$_POST[]或$_GET[]怎么办?如果我在表格中只有十列,我将“手动”编写它,这是我的第二个例子。但是我的表中有 30 多列......因此我试图找到一些我可以INSERT *并且还指定的组合column2,column3例如。有没有办法做到这一点?像这样的东西:NSERT INTO table2 ( *, Price, Customer) SELECT ( *, '451', 'John') FROM table1 WHERE condition;
2 回答

达令说
TA贡献1821条经验 获得超6个赞
你很近。只是不要使用括号:
INSERT INTO table2 (column1, column2, . . ., price, customer) -- list all columns here
SELECT t1.*, -- I advise you to list the columns here too
451, 'John'
FROM table1 t1
WHERE condition;
- 2 回答
- 0 关注
- 127 浏览
添加回答
举报
0/150
提交
取消