Mysql group by

临时表与内存表

内存表是 Memory 引擎表,表的数据行都在内存。

临时表可以使用各种引擎。

临时表是线程私有表,其他线程不可见,不需考虑重名问题。

session 结束时临时表会被自动删除。

如果 Binlog_format = row,则临时表语句不进入 binlog,不参与主从同步。

普通表的 table_def_key = 库名 + 表名。

临时表的 table_def_key = 库名 + 表名 + mysql实例 id + 线程 id。

内部临时表

Mysql 的一些操作需要临时存储数据,会用到临时表。比如 union 去重求交集。它将两个子查询的结果放入临时表,去重之后返回客户端。如果是 union all 求并集,就不需要临时表。

group by 分组也用到临时表。group by 分组默认排序,如果不需要排序,可以 sql 语句末尾添加 order by null

group by 无法判断分组字段是否有序,因此用到临时表。而索引是有序的,如果 group by 索引字段 就不会使用临时表,省去排序时间。

相关推荐
天衍四九-13 小时前
MySQL有哪些索引
数据库·mysql
A-刘晨阳13 小时前
K8s集群中的数据库新范式:KES-Operator解锁部署、扩缩容、备份全链路自动化
运维·数据库·云原生·kubernetes·自动化
大模型码小白13 小时前
Harness Engineering 驾驭工程:从使用到项目实战
大数据·数据库·人工智能·python·spring
abcyuu14 小时前
福州中小企业业财一体化系统权限管理与数据安全实践方案
大数据·网络·数据库
kyrie_sakura14 小时前
MySQL学习笔记4 -- select的7大子句,子查询
笔记·学习·mysql
灵境(虚幻知音)15 小时前
效能评估指标体系构建:方法、流程与模板
android·数据库
沈管家AI数字员工15 小时前
对话式数据分析实操:从自然语言到可视化图表的全流程
数据库·人工智能·ai·oracle·数据分析
may_一一15 小时前
MongoDB数据查看(Studio 3T)
数据库·mongodb
一个天蝎座 白勺 程序猿16 小时前
SQL Server数据库迁移实测:金仓KES V9R4C019让存量T-SQL“少量修改”
数据库·sql·kingbasees