查询:(
Delete from test_table; 我在程序中使用此删除命令每天执行)
该表包含 2 列名称,如scenario_id、item_id,这 2 列是复合主键。所以每个scenario_id都会有200万个item_id,如何快速删除这个表。
删除表的最快方法可能是DROP TABLE test_table命令,然后使用CREATE TABLE...命令重新创建表。DROP TABLE...将立即放下桌子。好吧,实际上它会将表格移动到回收站中。PURGE RECYCLEBIN如果要完全删除表格,您应该这样做。
删除表中数据的其他方法是使用TRUNCATE TABLE.... 这比 慢一点DROP TABLE...,但是比 快得多DELETE FROM...。由于截断表后无法回滚数据,因此在使用TRUNCATE TABLE.
create new table as select * from old_table where ...如果我们要删除超过 50% 的数据,那么简单地删除新旧数据并将新数据重命名为旧数据会快得多。exchanging您可以通过分区表中的分区来实现类似的目标。