认识MySQL数据库中的临时表

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,高可用系列 2核4GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 认识MySQL数据库中的临时表。

临时表的分类
按照创建的方式不同,MySQL的临时表可以分为两种,一种是用户使用CREATE TEMPORARY TABLE创建的,称为外部临时表,一种是因UNION、ORDER BY、GROUP BY、DISTINCT等复杂SQL操作产生的,称为内部临时表。
临时表的创建
临时表的创建的语法格式与创建普通表的语法格式类似,不同的之处在于增加了关键字TEMPORARY,具体语法如下所示。
CREATE TEMPORARY TABLE 表名(列的定义...);
临时表的查看
由于临时表的特殊性,因此使用SHOW TABLES不会列出临时表,但是可以使用SHOW CREATE TABLE或DESC命令查看临时表结构的详细信息,这两条命令的语法格式如下所示。
SHOW CREATE TABLE 临时表名
DESC 临时表名
临时表的删除
默认情况下,虽然当你断开与数据库的连接后,临时表就会自动被销毁,但是用户也可以在当前MySQL会话中使用 DROP TABLE 命令来手动删除临时表,删除临时表的语法与删除普通表的语法相同,具体格式如下。
DROP [TEMPORARY] TABLE 临时表名
临时表在MySQL中虽然应用的场景很多,但是在使用的过程还应该注意以下的一些限制。
1) 临时表在 memory、myisam、merge或者innodb上使用,并且不支持mysql cluster(簇)。
2)一个临时表只能被创建它的会话访问,对其他线程不可见。
3) 临时表名可以与普通表相同,但此时使用show create table 语句,以及增删改查语句访问的都是临时表,直到临时表被释放同名的普通表才可见。
4) show tables语句不会列出临时表,在information_schema中也不存在临时表信息。
5) 不能使用rename来重命名临时表。但是可以alter table rename代替。
6) 可以复制临时表得到一个新的临时表。
7) 但在同一个query语句中,相同的临时表只能出现一次。
8) 相同临时表不能在存储函数中出现多次。

相关实践学习
每个IT人都想学的“Web应用上云经典架构”实战
本实验从Web应用上云这个最基本的、最普遍的需求出发,帮助IT从业者们通过“阿里云Web应用上云解决方案”,了解一个企业级Web应用上云的常见架构,了解如何构建一个高可用、可扩展的企业级应用架构。
MySQL数据库入门学习
本课程通过最流行的开源数据库MySQL带你了解数据库的世界。   相关的阿里云产品:云数据库RDS MySQL 版 阿里云关系型数据库RDS(Relational Database Service)是一种稳定可靠、可弹性伸缩的在线数据库服务,提供容灾、备份、恢复、迁移等方面的全套解决方案,彻底解决数据库运维的烦恼。 了解产品详情: https://www.aliyun.com/product/rds/mysql 
相关文章
|
存储 关系型数据库 MySQL
轻松入门MySQL:优化复杂查询,使用临时表简化数据库查询流程(13)
轻松入门MySQL:优化复杂查询,使用临时表简化数据库查询流程(13)
390 0
|
SQL Oracle 关系型数据库
Oracle 数据库利用sql语句判断某个表是否是临时表实例演示,达梦数据库查询出所有临时表
Oracle 数据库利用sql语句判断某个表是否是临时表实例演示,达梦数据库查询出所有临时表
1017 0
Oracle 数据库利用sql语句判断某个表是否是临时表实例演示,达梦数据库查询出所有临时表
|
存储 关系型数据库 MySQL
Mysql的临时表
MySQL中的临时表是一种特殊类型的表,它仅在当前数据库会话中存在,并在会话结束时自动被删除。临时表的作用是存储临时数据,通常用于复杂的查询、数据处理或临时存储计算结果。
195 0
|
存储 监控 关系型数据库
解密MySQL中的临时表:探究临时表的神奇用途
解密MySQL中的临时表:探究临时表的神奇用途
1070 3
|
自然语言处理 监控 关系型数据库
mysql造数据占用临时表空间
【5月更文挑战第20天】MySQL在处理复杂查询时可能使用临时表,可能导致性能下降。临时表用于排序、分组和连接操作。常见问题包括内存限制、未优化的查询、数据类型不当和临时表清理。避免过度占用的策略包括优化查询、调整系统参数、优化数据类型和事务管理。使用并行查询、分区表和监控工具也能帮助管理临时表空间。通过智能问答工具如通义灵码,可实时续写SQL和获取优化建议。注意监控`Created_tmp_tables`和`Created_tmp_disk_tables`以了解临时表使用状况。
723 5
|
存储 安全 关系型数据库
MySQL 临时表的用法和特性
MySQL 临时表的用法和特性
|
SQL 关系型数据库 MySQL
MySQL - WITH...AS 创建临时表复用子查询
MySQL - WITH...AS 创建临时表复用子查询
1222 0
|
SQL 存储 关系型数据库
认识MySQL数据库中的临时表
认识MySQL数据库中的临时表。
133 4
|
前端开发 关系型数据库 MySQL
MYSQL基础知识之【临时表】
MYSQL基础知识之【临时表】
118 0
|
存储 关系型数据库 MySQL
MySQL的临时表以及视图与存储过程、触发器等功能概念详细解释说明以及它们的使用方法举例?
MySQL的临时表以及视图与存储过程、触发器等功能概念详细解释说明以及它们的使用方法举例?

推荐镜像

更多