将数据从一个表移动到另一个表

时间:2011-09-25 12:35:59

标签: mysql insert move sql-delete

这个问题似乎得到了多次回答。但是没有一个符合我需要的标准。

是否可以选择(并将它们插入另一个表中)并从Mysql中的原始表中删除行而不运行所选标准两次?

例如,我可以这样做:

INSERT INTO main (SELECT * FROM temp WHERE age > 30)
DELETE FROM cache WHERE age > 30

然而,对于一个非常复杂且长时间运行的查询,查询的“匹配部分”将被执行两次,而我认为应该有一个删除所选项的解决方案,因为你已经提取了它们。

我的问题是,这是可能的,如果是的话。怎么样?

1 个答案:

答案 0 :(得分:0)

不,你不能那样做。

如果您担心作业之间表的完整性,则应使用事务。