zoukankan      html  css  js  c++  java
  • mysql的表分区

    大概有五种:

    1.range 范围分区:例如按照时间范围

    create table range(
      id int(11),
      money int(11) unsigned not null,
      date datetime
      )partition by range(year(date))(
      partition p2007 values less than (2008),
      partition p2008 values less than (2009),
      partition p2009 values less than (2010)
      partition p2010 values less than maxvalue
    );
    2.list 例如多个类型的数据:
    create table list(
      a int(11),
      b int(11)
      )(partition by list (b)
      partition p0 values in (1,3,5,7,9),
      partition p1 values in (2,4,6,8,0)
     );
      3.hash
    create table hash(
      a int(11),
      b datetime
      )partition by hash (YEAR(b)
      partitions 4;
     
    4.key
    create table t_key(
      a int(11),
      b datetime)
      partition by key (b)
      partitions 4;
     
    =============================
     
     
    如何添加分区?
    ALTER TABLE sale_data
    ADD PARTITION (PARTITION p201010 VALUES LESS THAN (201011));
    如何删除分区?
    ALTER TABLE sale_data DROP PARTITION p201010;
     
    分区合并:
    ALTER TABLE sale_data
    REORGANIZE PARTITION p201001,p201002,p201003,
    p201004,p201005,p201006,
    p201007,p201008,p201009 INTO
    (
    PARTITION p2010Q1 VALUES LESS THAN (201004),
    PARTITION p2010Q2 VALUES LESS THAN (201007),
    PARTITION p2010Q3 VALUES LESS THAN (201010)
    );
     
     
     
     
     
     
     
  • 相关阅读:
    第四章作业
    第二章上机实验报告
    对二分法的理解和结对编程情况
    Mysql与sql server的列的合并
    C#中如何去除窗体默认的关闭按钮
    C# 实现WinForm窗口最小化到系统托盘代码,并且判断左右鼠标的事件
    running total sql 2012+
    Poqwe Pivot error
    事务
    ssis 导EXCEL ERROR
  • 原文地址:https://www.cnblogs.com/zgghb/p/6385084.html
Copyright © 2011-2022 走看看