2012-03-01 58 views
1

我想从table1传输50行到表2,我应该怎么做?插入选择删除

建议代码:

INSERT INTO table2 SELECT * FROM table1 
    WHERE uid IN ('23','34','345','567','3242','34322','2') DELETE; 
+0

什么是DELETE在到底意味着什么? – 2012-03-01 07:19:12

+0

table1和table2是否具有相同的架构,并且您将行附加到table2? – 2012-03-01 07:19:56

+0

我不知道,我猜我看到它在什么地方 - 我想要做的是从table1删除条目并将它们移动(不复制它们)到table2 – 2012-03-01 07:20:36

回答

4

写2个语句。如果您USEE InnoDB的,把它们放在一个事务里

START TRANSACTION ; 

INSERT INTO table2 
    SELECT * 
    FROM table1 
    WHERE uid IN ('23','34','345','567','3242','34322','2') ; 

DELETE FROM table1 
WHERE uid IN ('23','34','345','567','3242','34322','2') ; 

COMMIT ; 
+0

不,我使用phpmy管理.. – 2012-03-01 07:20:07

+0

您可以使用PHPMyadmin来运行语句或脚本。问题是什么? – 2012-03-01 07:22:00

+0

有没有问题,你问,我回答 – 2012-03-01 07:24:02

0
INSERT INTO TABLE2 SELECT * FROM TABLE1 WHERE COL1 = 'A'