3.1.4 MERGE
MyISAM还提供了另外一种类型,尽管使用不如其他引擎突出,但在某些情况下非常有用。这种类型在版本3.23.25中引入,称为MERGE表,实际上是相同MyISAM表的聚合器。这为什么会有用?假设一个数据库通常用于存储时间特定的数据——应该能很快想到,销售信息、服务器日志和航班时间表就属于这一类数据。但可以想见,这些数据库会很快变得很大,非常难于管理。因此,一种常用的存储策略是将数据分成很多表,每个名称与特定的时间块相关。例如,可以用12个相同的表来存储服务器日志数据,每个表用对应各个月份的名字来命名。不过,有必要基于所有12个表的数据生成报表,这意味着需要编写并更新多表查询,以反映这些表中的信息。与其编写这些可能出现错误的查询,不如将这些表合并起来使用一条查询。之后可以删除MERGE表,而不影响原来的数据。