在mysql中分区是创建表还是仅创建虚拟表?

时间:2012-04-05 20:26:14

标签: mysql database-partitioning

当在mysql中完成分区时,它是创建表还是创建虚拟表(即视图),这些表是由表名访问的几乎存储的查询?

这是一个例子(虽然在Oracle中,这只是作为一个例子 - 我对它在mysql中的处理方式最为好奇)来自http://www.devarticles.com/c/a/Oracle/Partitioning-in-Oracle/1/

CREATE TABLE SAMPLE_ORDERS
(ORDER_NUMBER NUMBER,
ORDER_DATE DATE,
CUST_NUM NUMBER,
TOTAL_PRICE NUMBER,
TOTAL_TAX NUMBER,
TOTAL_SHIPPING NUMBER)
PARTITION BY RANGE(ORDER_DATE)
(
PARTITION SO99Q1 VALUES LESS THAN TO_DATE(‘01-APR-1999’, ‘DD-MON-YYYY’),
PARTITION SO99Q2 VALUES LESS THAN TO_DATE(‘01-JUL-1999’, ‘DD-MON-YYYY’),
PARTITION SO99Q3 VALUES LESS THAN TO_DATE(‘01-OCT-1999’, ‘DD-MON-YYYY’),
PARTITION SO99Q4 VALUES LESS THAN TO_DATE(‘01-JAN-2000’, ‘DD-MON-YYYY’),
PARTITION SO00Q1 VALUES LESS THAN TO_DATE(‘01-APR-2000’, ‘DD-MON-YYYY’),
PARTITION SO00Q2 VALUES LESS THAN TO_DATE(‘01-JUL-2000’, ‘DD-MON-YYYY’),
PARTITION SO00Q3 VALUES LESS THAN TO_DATE(‘01-OCT-2000’, ‘DD-MON-YYYY’),
PARTITION SO00Q4 VALUES LESS THAN TO_DATE(‘01-JAN-2001’, ‘DD-MON-YYYY’)
)
;

1 个答案:

答案 0 :(得分:1)

根据Mysql 5.6参考手册(16.1 MySQL中的分区概述):

  

通过启用,分区可以使这一概念更进一步   在文件系统中分发各个表的部分   根据您可以根据需要设置的规则。有效,   表的不同部分存储为单独的表   不同的地点。