Mysql 临时表
之前对oracle的临时表和内存表有过一篇探索文档,现在对MySQL的临时表进行一些探索。(本文提到的MySQL临时表均为外部临时表)
临时表
临时表是建立在系统临时文件夹中的表。临时表的数据和表结构都存储在内存之中,退出的时候所占的空间会被释放。
语法
//创建临时表tmp_table
CREATE TEMPORARY TABLE tmp_table (
NAME VARCHAR (10) NOT NULL,
VALUE1 INTEGER NOT NULL
);
//插入数据
INSERT INTO tmp_table VALUES ('赵','1');
//查询数据
select * from tmp_table;
//删除数据
delete from tmp_table;
//删除表
drop table tmp_table;
应用场景
在程序对数据量很大的表有较频繁的读取操作,每次都多表关联进行查询效率不高。这时候可以使用临时表,先查询出需要的子集放入临时表中,在处理中读取临时表的数据进行处理。
特性
生命周期
MySQL的临时表是会话级的。不同的会话中的临时表彼此互不可见,因此可以创建同名的临时表。<