1.需要將日期和主鍵設定為主鍵
create table `stat_stock_all` (
`date` date not null,
`code` varchar(255) not null,
`name` varchar(255) default null,
`change` varchar(255) default null,
`open` varchar(255) default null,
`preclose` varchar(255) default null,
`close` varchar(255) default null,
`high` varchar(255) default null,
`low` varchar(255) default null,
`volume` varchar(255) default null,
`amount` varchar(255) default null,
primary key (`date`,`code`)
) engine=myisam default charset=utf8
partition by range(to_days(`date`))
(partition p2017q1 values less than (to_days('2017-04-01')),
partition p2017q2 values less than (to_days('2017-07-01')),
partition p2017q3 values less than (to_days('2017-10-01')),
partition p2017q4 values less than (to_days('2018-01-01')),
partition p2018q1 values less than (to_days('2018-04-01')),
partition p2018q2 values less than (to_days('2018-07-01')),
partition p2018q3 values less than (to_days('2018-10-01')),
partition p2018q4 values less than (to_days('2019-01-01')),
);//檢視分割槽表的具體情況
select
partition_name,
partition_expression,
partition_description,
table_rows
from
information_schema. partitions
where
table_schema = schema ()
and table_name = 'gt_stk_index'
//檢視分割槽的資料
explain partitions select * from gt_stk_index partition (p2018,p2019);
查詢資料的時候按照日期篩選5萬以上的資料是可以看到查詢的效果的
mysql建立分割槽索引 mysql建立分割槽索引
該樓層疑似違規已被系統摺疊 隱藏此樓檢視此樓 mysql建立分割槽索引 一 分割槽表 把所有的資料放在乙個表中,但是物理儲存資料會根據一定規則存放到不同的檔案中 二 什麼時候使用分割槽表?資料比較大時候,數以億記或者數以tb記的資料,如果使用索引在空間和維護消耗巨大,甚至索引沒有效果了.例子 檢視是...
mysql建立最小分割槽 mysql 建立分割槽
list分割槽 鍵值通過自定義的list來確定寫入到哪個分割槽中。優勢 支援int,時間,varchar等值 劣勢 需要自己寫相應資料的從屬 寫入或者查詢到哪個分割槽 即後期若分割槽條件修改需要再配置。create table t test unid int auto increment uuid ...
mysql動態分割槽 MySQL動態建立分割槽
按日期分割槽的資料表,我們希望每年 每個月甚至每天動態建立乙個分割槽,這種情況就需要用事件和儲存過程來實現動態新增分割槽,下面的儲存過程是按年分割槽增加當年分割槽的過程 begin routine body goes here.declare currenttime date default cur...