Heim  >  Artikel  >  Datenbank  >  mysql merge分表操作_MySQL

mysql merge分表操作_MySQL

WBOY
WBOYOriginal
2016-06-01 13:36:301134Durchsuche

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
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn