欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

mysql merge分表操作_MySQL

程序员文章站 2022-06-07 12:49:51
...
bitsCN.com

mysql merge分表操作

三个分表:

CREATE TABLE `test_1` (

id INT(11) NOT NULL DEFAULT '0',

email varchar(50) NOT NULL ,

PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=UTF8;

CREATE TABLE `test_2` (

id INT(11) NOT NULL DEFAULT '0',

email varchar(50) NOT NULL ,

PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=UTF8;

CREATE TABLE `test_3` (

id INT(11) NOT NULL DEFAULT '0',

email varchar(50) NOT NULL ,

PRIMARY KEY (`id`)

) ENGINE=MyISAM DEFAULT CHARSET=UTF8;

一个总表:

CREATE TABLE `test` (

`id` INT(11) NOT NULL DEFAULT '0'

email varchar(50) NOT NULL

key `i_id` (`id`),

) ENGINE=MRG_MyISAM UNION=(test_1,test_2,test_3) DEFAULT CHARSET=UTF8;

在总表test上面select *的话,会取出三个分表中的数据。

在插入数据的时候根据对象的hash code 取模运算,如果余数为 3 那么就插入 test_3 这个表中。

bitsCN.com