返回顶部
首页 > 资讯 > 数据库 >简单聊聊MySQL临时表(TEMPORARY TABLE)
  • 139
分享到

简单聊聊MySQL临时表(TEMPORARY TABLE)

mysql数据库sql 2023-08-20 21:08:59 139人浏览 泡泡鱼
摘要

目录什么的也不需要 一、什么是临时表二、临时表有哪些类型1、内部临时表:2、外部临时表: 三、对外部临时表说两句四、执行验证 一、什么是临时表 Mysql临时表在很多场景中都会用到,mysql内部在执行复杂sql时,需要借助

一、什么是临时表

Mysql临时表在很多场景中都会用到,mysql内部在执行复杂sql时,需要借助临时表进行分组、排序、去重等操作。

  1. 作用:临时表用来保存一些 “临时数据”
  2. 特点:
    (1) 临时表只在“当前连接”可见,当关闭连接时,MySQL会自动删除表数据及表结构
    (2) 临时表 和 普通表 用法一样,用关键字 “TEMPORARY” 予以区别

二、临时表有哪些类型

1、内部临时表:

通常在执行复杂SQL语句时,比如group by,distinct,uNIOn等语句,执行计划中如果包含Using temporary,那么MySQL内部将使用自动生成的临时表,以辅助SQL的执行。比如:
在这里插入图片描述

2、外部临时表:

**通过CREATE TEMPORARY TABLE语句创建的临时表为外部临时表,在创建时可以手动指定临时表的存储引擎。**比如:

CREATE TEMPORARY TABLE temp_t(id INT,name VARCHAR(10)) ENGINE = InnoDB;INSERT INTO temp_t VALUES (1,'one'),(2,'two'),(3,'three');SELECT * FROM temp_t;DROP TEMPORARY TABLE temp_t;

**外部临时表还可以通过查询结果进行直接创建。**比如:

CREATE TEMPORARY TABLE tmp_t SELECT * FROM 指定的table_name;

三、对外部临时表说两句

  • 再次重申一下,外部临时表的生命周期仅仅是当前连接
  • SHOW TABLES;命令并不能看到创建的外部临时表,内部的当然更看不到
  • 但是,外部创建的临时表可以通过SELECT语句进行查询
  • 外部临时表会随着连接的关闭而被自动清理掉,当然也可以手动进行删除。特别注意,为了数据安全避免误操作,在删除临时表时,一定不能省略TEMPORARY关键字,否则如果与非临时表表名重复也会被删除掉

四、执行验证

略。

写了个略,突然想起小时候,课本习题的答案好多都是略,还有的老师让把最后的答案整个撕下来上交,那些当时觉得难熬的日子,如今看来是那般无忧无虑。当学生,除了没钱什么都有,当员工,除了温饱,什么都没有。

来源地址:https://blog.csdn.net/shaofengzong/article/details/130035273

您可能感兴趣的文档:

--结束END--

本文标题: 简单聊聊MySQL临时表(TEMPORARY TABLE)

本文链接: https://www.lsjlt.com/news/376662.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作