ホームページ  >  記事  >  データベース  >  mysql merge分表操作_MySQL

mysql merge分表操作_MySQL

WBOY
WBOYオリジナル
2016-06-01 13:36:301134ブラウズ

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
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。