2011-03-27 125 views
2

如何將多行結果的結果插入到MYSQL中?MYSQL:從SELECT結果中插入多個結果到表中

我的SQL的結果是:

user_id | Name | Age 
--------+----------+----- 
     1 | Rob  | 23 
     2 | Jenny | 35 
     3 | Brock | 18 
     4 | Samantha | 46 

如何插入所有結果到另一個SQL表?我猜測有一個「foreach行作爲....」php函數。我正在使用Zend Framework。

+2

沒有「S」在 – zerkms 2011-03-27 11:04:01

+1

的Zend框架名;-)結束:d感謝你的筆記哈哈。 – Darius 2011-03-27 11:07:18

回答

4
INSERT INTO tbl (user_id, name, age) 
    SELECT user_id, 
      name, 
      age 
     FROM tbl2 
     WHERE ... 
+0

我感到尷尬,我正在做INSERT INTO tbl VALUE(SELECT ...)。謝謝。 – Darius 2011-03-27 11:06:18

3

這可以在不涉及PHP的情況下完成。大多數數據庫可以處理自己:

INSERT INTO second_table (user_id, Name, Age) 
    SELECT user_id, Name, Age 
    FROM first_table 

這裏就可以了mysql的信息:http://dev.mysql.com/doc/refman/5.1/de/insert-select.html

+1

我感到尷尬,我正在做INSERT INTO tbl VALUE(SELECT ...)。謝謝。 – Darius 2011-03-27 11:06:36