規則如下:
判斷一個ID在哪個庫里的公式是:id % 4 / 2
判斷一個ID在哪個表里的公式是:id % 4 % 2
其中4表示總共有多少個分表,2表示總共有多少個數據庫;上面這個例子,表示總共有2個數據庫,每個數據庫有2個分表,所以是2 * 2 = 4;
所以,對於ID是1,2,3,4,5的這些情況,落到的庫和表分別如下:
ID=1
1 % 4 / 2 = 0 (注:0表示是index=0的庫,即第一個庫,這里計算得到的數值都是從0開始)
1 % 4 % 2 = 1 (注:1表示是index=1的表,即第二個表,這里計算得到的數值都是從0開始)
即在第1個庫里的第2個表
ID=2
2 % 4 / 2 = 1
2 % 4 % 2 = 0
即在第2個庫里的第1個表
ID=3
3 % 4 / 2 = 1
3 % 4 % 2 = 1
即在第2個庫里的第2個表
ID=4
4 % 4 / 2 = 0
4 % 4 % 2 = 0
即在第1個庫里的第1個表
ID=5
5 % 4 / 2 = 0
5 % 4 % 2 = 1
即在第1個庫里的第2個表
