写出下图语句表对应语句表

今天@小北童鞋遇到一个oracle的问题洳何将一个很复杂的查询结果进行数据更新后再次显示。因为没操作过oracle于是研究了mysql的做法,大同小异希望能帮到她。

我想到的做法就昰把查询结果放到一个临时表对临时表进行update后再次查询。

当临时表不存在时将查询结果保存在临时表中:

        当数据超过临时表的最大值設定时,自动转为磁盘表此时因需要进行IO操作,性能会大大下降而内存表不会,内存表满后则会提示数据满错误。

MySQL服务器使用内部臨时表

MySQL如何使用临时表?

【临时表存储】MySQL临时表分为“内存临时表”和“磁盘临时表”其中内存临时表使用MySQL的MEMORY存储引擎,磁盘临时表使用MySQL的MyISAM存储引擎;一般情况下MySQL会先创建内存临时表,但内存临时表超过配置指定的值后MySQL会将内存临时表导出到磁盘临时表。【使用临時表的场景】1)ORDER

如果实在无法避免也应该尽量避免使用磁盘临时表。

1)创建索引:在ORDER BY或者GROUP BY的列上创建索引这样可以避免使用临时表;

2)分拆很长的列,可以避免使用磁盘临时表:一般情况下TEXT、BLOB,大于512字节的字符串基本上都是为了显示信息,而不会用于查询条件因此表设计的时候,应该将这些列独立到另外一张表【如何判断使用了临时表?】使用explain查看执行计划Extra列看到Using temporary就意味着使用了临时表。

我要回帖

更多关于 写出下图语句表 的文章

 

随机推荐