加载中…
个人资料
  • 博客等级:
  • 博客积分:
  • 博客访问:
  • 关注人气:
  • 获赠金笔:0支
  • 赠出金笔:0支
  • 荣誉徽章:
正文 字体大小:

mysql  分区表中分区键NULL值处理

(2011-08-04 15:54:02)
标签:

分区表

分类: mysql
NULL值不是一个数值!从5.1.8开始,分区的实现中对null值的处理和order by的处理一样是把null值看成比任何非null值都要小的存在。
不同的分区类型对null的处理也是不一样的(测试环境DB:qw_test)

1、RANGE分区:
A、创建两个分区表,注意其最小分区的值
  http://s6/middle/4d398f21ga9a9563ed2d5&690 分区表中分区键NULL值处理" TITLE="mysql  分区表中分区键NULL值处理" />

 B、通过information_schema查看分区表中各分区信息
  http://s5/middle/4d398f21ga9a956eb5f64&690 分区表中分区键NULL值处理" TITLE="mysql  分区表中分区键NULL值处理" />

C、往两个分区表各写入一条分区键键值为null的记录
 http://s9/middle/4d398f21ga9a9576bf968&690 分区表中分区键NULL值处理" TITLE="mysql  分区表中分区键NULL值处理" />

 D、通过information_schema查看分区表中各分区信息
  http://s9/middle/4d398f21ga9a957f84358&690 分区表中分区键NULL值处理" TITLE="mysql  分区表中分区键NULL值处理" />
 (记录都写在当前最小的分区中)

E、通过删除最小分区后查询全表记录查看
  http://s3/middle/4d398f21ga9a958be3f72&690 分区表中分区键NULL值处理" TITLE="mysql  分区表中分区键NULL值处理" />

结论:range分区中分区键写入null值,则记录会被写入当前最小的分区;在分区清理的过程中可能会将这部分数据误处理,建议在指定分区键的时候字段属性设置not null来约束!


2、LIST分区:
A、创建一个list分区表,注意几个分区中list列表
  http://s13/middle/4d398f21ga9a959d14c7c&690 分区表中分区键NULL值处理" TITLE="mysql  分区表中分区键NULL值处理" />

B、写入不在list中非null值记录、null值记录
  http://s12/middle/4d398f21ga9a95a89519b&690 分区表中分区键NULL值处理" TITLE="mysql  分区表中分区键NULL值处理" />
 (均提示无指定分区存储记录)

C、创建两个分别含有null值的list分区表
 http://s9/middle/4d398f21ga9a96032fe48&690 分区表中分区键NULL值处理" TITLE="mysql  分区表中分区键NULL值处理" />

D、分别向两个list分区表中写入一条分区键值为null的记录
  http://s8/middle/4d398f21ga9a96174c8d7&690 分区表中分区键NULL值处理" TITLE="mysql  分区表中分区键NULL值处理" />

E、通过information_schema查看分区表中各分区信息
  http://s4/middle/4d398f21ga9a9623c30a3&690 分区表中分区键NULL值处理" TITLE="mysql  分区表中分区键NULL值处理" />

F、同样也可以通过删除相应分区后查询全表记录查看
  http://s3/middle/4d398f21ga9a9636b4072&690 分区表中分区键NULL值处理" TITLE="mysql  分区表中分区键NULL值处理" />

结论:list分区中null值必须和其他值一样明确list指定才会被写入

3、HASH和KEY分区
在这两种分区中null值被等值于0进行处理,有兴趣的同学可以自己验证下。

参考官方文档:http://dev.mysql.com/doc/refman/5.1/en/partitioning-handling-nulls.html

0

阅读 收藏 喜欢 打印举报/Report
  

新浪BLOG意见反馈留言板 欢迎批评指正

新浪简介 | About Sina | 广告服务 | 联系我们 | 招聘信息 | 网站律师 | SINA English | 产品答疑

新浪公司 版权所有