我想將列從一個表復制到另一個表,當我想復制“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 關注
- 142 瀏覽
添加回答
舉報
0/150
提交
取消