Rumah  >  Artikel  >  pangkalan data  >  mysql merge分表操作_MySQL

mysql merge分表操作_MySQL

WBOY
WBOYasal
2016-06-01 13:36:301134semak imbas

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
Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn