在Mysql中删除Create table vs Truncate表

时间:2017-07-24 10:32:54

标签: mysql

在日常的cron作业中,我需要在Mysql中创建一个表,进行一些处理,最后放弃它(不再需要这个表)。

我的问题是以下两种策略中的哪一种在CPU利用率和内存占用方面更好:

  1. 在作业开始时创建表格并在结束时将其删除。
  2. 作业结束时的TRUNCATE表(即表从不丢弃,只是在每次作业运行后都被截断)。
  3. 在第一种方法中,必须在每个作业运行中创建一个新表,而在第二种方法中,表仍保留在Mysql 24 * 7中,即使在作业运行后不需要它。

2 个答案:

答案 0 :(得分:2)

您可以创建临时表而不是创建实际表:

CREATE TEMPORARY TABLE IF NOT EXISTS table2 AS (SELECT * FROM table1)

答案 1 :(得分:0)

一开始使用此查询

Select * into test from Table

在最后截断它并放弃它。

Truncate table test
Or
Drop table test