#mysql中产生临时表的情况
1》产生临时表的情况
1. group by 的列和order by 的列不同时, 2表边查时,取A表的内容,group/order by另外表的列
2. distinct 和 order by 一起使用时
3. 开启了 SQL_SMALL_RESULT 选项
2》临时表写入磁盘上的情况
1. 取出的列含有text/blob类型时 —内存表储存不了text/blob类型
2. 在group by 或distinct的列中存在>512字节的string列
3. select 中含有>512字节的string列,同时又使用了union或union all语句
特别注意:
少用子查询 少使用group by
本文详细介绍了MySQL中产生临时表的几种常见情况,包括group by和order by操作导致的临时表生成、distinct与order by结合使用时的情况等。此外还探讨了哪些特定条件会促使临时表从内存写入到磁盘上。
330

被折叠的 条评论
为什么被折叠?



