NIUCLOUD是一款SaaS管理后台框架多应用插件+云编译。上千名开发者、服务商正在积极拥抱开发者生态。欢迎开发者们免费入驻。一起助力发展! 广告
#### 算法 **根据"字段内容"是否在 某个范围进行分区,通过预定义的范围的值来对数据进行分割.** 这种模式允许将数据划分不同范围。例如可以将一个表通过月份划分成若干个分区 . #### 语法 ~~~ create table p_range( id int, name varchar(32), birthday date )engine innodb charset utf8 partition by range (month(birthday))( //用month() 获得月份值 partition p_1 values less than (3), partition p_2 values less than(6), partition p_3 values less than(9), partition p_4 values less than MAXVALUE ); ~~~ less than : 小于等于 ; MAX VALUE : 可能的最大值 ; **文件结构** ![](https://box.kancloud.cn/0f06f4ae62e3f4830aea69b1bd90fe93_861x263.png) #### 测试 ~~~ explain partitions select * from user where age > 20\G ~~~ 结果: ~~~ id: 1 select_type: SIMPLE table: user partitions: p_3,p_4 //使用了分区, type: range possible_keys: age key: age //给字段加索引效果更好 key_len: 2 ref: NULL rows: 3 filtered: 100.00 Extra: Using index condition ~~~