2011-06-14 101 views
1

我有兩個表:將mySQL行復制到具有不同名稱的同一個表中?

`temp_info` and `paid_info` 

一旦支付成功,我想從temp_info數據被複制到paid_info - 完全相同的數據,完全相同的字段名等

我們如何去這樣做?有沒有更有效的方法比做一個MySQL查詢並獲得所有的temp_info細節作爲變量並將它們插入到新表中?

temp_info中的信息由唯一ID定義,因此我們可以使用它來定義它並將數據複製到paid_info表中。

謝謝

回答

4

使用INSERT INTO ... SELECT語法:

http://dev.mysql.com/doc/refman/5.5/en/insert-select.html

INSERT INTO paid_info (col1, col2, col3, ...) 
SELECT s.col1, s.col2, s.col3, ... 
FROM temp_info as s 
WHERE s.unique_id = <some id that you want to copy over> 
+0

您好,謝謝你 - 這似乎很大。當使用它時,我們得到錯誤:操作數應該包含1列(s) – Latox 2011-06-14 04:50:31

+0

對不起,'SELECT'部分的列周圍沒有parens - 這是我的錯誤。編輯並刪除。 – Amber 2011-06-14 05:01:33

+0

完美!謝謝琥珀。 – Latox 2011-06-14 13:25:56

相關問題