forked from docs/doc-exports
Reviewed-by: Hasko, Vladimir <vladimir.hasko@t-systems.com> Reviewed-by: Pruthi, Vineet <vineet.pruthi@t-systems.com> Co-authored-by: Lu, Huayi <luhuayi@huawei.com> Co-committed-by: Lu, Huayi <luhuayi@huawei.com>
101 lines
6.0 KiB
HTML
101 lines
6.0 KiB
HTML
<a name="EN-US_TOPIC_0000001772696192"></a><a name="EN-US_TOPIC_0000001772696192"></a>
|
|
|
|
<h1 class="topictitle1">PARTITION BY</h1>
|
|
<div id="body8662426"><p id="EN-US_TOPIC_0000001772696192__en-us_topic_0000001657865418_en-us_topic_0000001398458592_p8060118">In MySQL, PARTITION BY is used to create partitioned tables. Currently, GaussDB(DWS) supports only range and list partitions in MySQL.</p>
|
|
<div class="caution" id="EN-US_TOPIC_0000001772696192__en-us_topic_0000001657865418_en-us_topic_0000001398458592_en-us_topic_0214164618_note9749104517138"><span class="cautiontitle"><img src="public_sys-resources/caution_3.0-en-us.png"> </span><div class="cautionbody"><p id="EN-US_TOPIC_0000001772696192__en-us_topic_0000001657865418_en-us_topic_0000001398458592_en-us_topic_0214164618_p117497455133">Hash partitions of PARTITION BY are not supported and deleted during migration. The deletion does not affect the current table functions, but may affect the performance slightly.</p>
|
|
</div></div>
|
|
<div class="section" id="EN-US_TOPIC_0000001772696192__en-us_topic_0000001657865418_en-us_topic_0000001398458592_section12615112915911"><h4 class="sectiontitle">PARTITION BY RANGE</h4><p id="EN-US_TOPIC_0000001772696192__en-us_topic_0000001657865418_en-us_topic_0000001398458592_en-us_topic_0214164599_p574881056"><strong id="EN-US_TOPIC_0000001772696192__en-us_topic_0000001657865418_en-us_topic_0000001398458592_en-us_topic_0214164599_b1062920488557">Input</strong></p>
|
|
<pre class="screen" id="EN-US_TOPIC_0000001772696192__en-us_topic_0000001657865418_en-us_topic_0000001398458592_en-us_topic_0214164599_screen52843365572">CREATE TABLE IF NOT EXISTS `runoob_tbl_part_test`(
|
|
`runoob_id` INT NOT NULL,
|
|
`runoob_title` VARCHAR(100) NOT NULL,
|
|
`runoob_author` VARCHAR(40) NOT NULL,
|
|
`submission_date` VARCHAR(30)
|
|
)ENGINE=InnoDB DEFAULT CHARSET=utf8
|
|
PARTITION BY RANGE (`runoob_id`)(
|
|
PARTITION p0 VALUES LESS THAN(100),
|
|
PARTITION p1 VALUES LESS THAN(200),
|
|
PARTITION p2 VALUES LESS THAN(300),
|
|
PARTITION p3 VALUES LESS THAN(400),
|
|
PARTITION p4 VALUES LESS THAN(500),
|
|
PARTITION p5 VALUES LESS THAN (MAXVALUE)
|
|
);
|
|
|
|
ALTER TABLE `runoob_tbl_part_test` ADD PARTITION (PARTITION p6 VALUES LESS THAN (600));
|
|
|
|
ALTER TABLE `runoob_tbl_part_test` ADD PARTITION (PARTITION p7 VALUES LESS THAN (700),PARTITION p8 VALUES LESS THAN (800));</pre>
|
|
<p id="EN-US_TOPIC_0000001772696192__en-us_topic_0000001657865418_en-us_topic_0000001398458592_en-us_topic_0214164599_p12114173518210"><strong id="EN-US_TOPIC_0000001772696192__en-us_topic_0000001657865418_en-us_topic_0000001398458592_en-us_topic_0214164599_b6709155185510">Output</strong></p>
|
|
<pre class="screen" id="EN-US_TOPIC_0000001772696192__en-us_topic_0000001657865418_en-us_topic_0000001398458592_en-us_topic_0214164599_screen1360576145519">CREATE TABLE IF NOT EXISTS "public"."runoob_tbl_part_test" (
|
|
"runoob_id" INTEGER NOT NULL,
|
|
"runoob_title" VARCHAR(400) NOT NULL,
|
|
"runoob_author" VARCHAR(160) NOT NULL,
|
|
"submission_date" VARCHAR(120)
|
|
) WITH (ORIENTATION = ROW, COMPRESSION = NO) NOCOMPRESS DISTRIBUTE BY HASH ("runoob_id") PARTITION BY RANGE ("runoob_id") (
|
|
PARTITION p0
|
|
VALUES
|
|
LESS THAN (100),
|
|
PARTITION p1
|
|
VALUES
|
|
LESS THAN (200),
|
|
PARTITION p2
|
|
VALUES
|
|
LESS THAN (300),
|
|
PARTITION p3
|
|
VALUES
|
|
LESS THAN (400),
|
|
PARTITION p4
|
|
VALUES
|
|
LESS THAN (500),
|
|
PARTITION p5
|
|
VALUES
|
|
LESS THAN (MAXVALUE)
|
|
);
|
|
ALTER TABLE "public"."runoob_tbl_part_test" ADD PARTITION p6 VALUES LESS THAN (600);
|
|
ALTER TABLE "public"."runoob_tbl_part_test" ADD PARTITION p7 VALUES LESS THAN (700), ADD PARTITION p8 VALUES LESS THAN (800);</pre>
|
|
</div>
|
|
<div class="section" id="EN-US_TOPIC_0000001772696192__en-us_topic_0000001657865418_en-us_topic_0000001398458592_section16358942002"><h4 class="sectiontitle">PARTITION BY LIST</h4><p id="EN-US_TOPIC_0000001772696192__en-us_topic_0000001657865418_en-us_topic_0000001398458592_p18352259016"><strong id="EN-US_TOPIC_0000001772696192__en-us_topic_0000001657865418_en-us_topic_0000001398458592_b16359251103">Input</strong></p>
|
|
<pre class="screen" id="EN-US_TOPIC_0000001772696192__en-us_topic_0000001657865418_en-us_topic_0000001398458592_screen1535202510014">CREATE TABLE IF NOT EXISTS `runoob_tbl_part_test`(
|
|
`runoob_id` INT NOT NULL,
|
|
`runoob_title` VARCHAR(100) NOT NULL,
|
|
`runoob_author` VARCHAR(40) NOT NULL,
|
|
`submission_date` VARCHAR(30),
|
|
PRIMARY KEY (`runoob_id`)
|
|
)ENGINE=InnoDB DEFAULT CHARSET=utf8
|
|
PARTITION BY LIST (runoob_id)(
|
|
PARTITION r0 VALUES IN (1, 5, 9, 13, 17, 21),
|
|
PARTITION r1 VALUES IN (2, 6, 10, 14, 18, 22),
|
|
PARTITION r2 VALUES IN (3, 7, 11, 15, 19, 23),
|
|
PARTITION r3 VALUES IN (4, 8, 12, 16, 20, 24)
|
|
);
|
|
ALTER TABLE `runoob_tbl_part_test` ADD PARTITION (PARTITION p5 VALUES IN(30, 40, 50, 60, 70, 80));</pre>
|
|
<p id="EN-US_TOPIC_0000001772696192__en-us_topic_0000001657865418_en-us_topic_0000001398458592_p2354251103"><strong id="EN-US_TOPIC_0000001772696192__en-us_topic_0000001657865418_en-us_topic_0000001398458592_b1235925902">Output</strong></p>
|
|
<pre class="screen" id="EN-US_TOPIC_0000001772696192__en-us_topic_0000001657865418_en-us_topic_0000001398458592_screen143512252004">CREATE TABLE IF NOT EXISTS "public"."runoob_tbl_part_test" (
|
|
"runoob_id" INTEGER NOT NULL,
|
|
"runoob_title" VARCHAR(400) NOT NULL,
|
|
"runoob_author" VARCHAR(160) NOT NULL,
|
|
"submission_date" VARCHAR(120),
|
|
PRIMARY KEY ("runoob_id")
|
|
) WITH (ORIENTATION = ROW, COMPRESSION = NO) NOCOMPRESS DISTRIBUTE BY HASH ("runoob_id") PARTITION BY LIST (runoob_id) (
|
|
PARTITION r0
|
|
VALUES
|
|
(1, 5, 9, 13, 17, 21),
|
|
PARTITION r1
|
|
VALUES
|
|
(2, 6, 10, 14, 18, 22),
|
|
PARTITION r2
|
|
VALUES
|
|
(3, 7, 11, 15, 19, 23),
|
|
PARTITION r3
|
|
VALUES
|
|
(4, 8, 12, 16, 20, 24)
|
|
);
|
|
ALTER TABLE "public"."runoob_tbl_part_test" ADD PARTITION p5 VALUES (30, 40, 50, 60, 70, 80);</pre>
|
|
<p id="EN-US_TOPIC_0000001772696192__en-us_topic_0000001657865418_en-us_topic_0000001398458592_p193313241705"></p>
|
|
</div>
|
|
</div>
|
|
<div>
|
|
<div class="familylinks">
|
|
<div class="parentlink"><strong>Parent topic:</strong> <a href="dws_16_0119.html">Table (Optional Parameters and Operations)</a></div>
|
|
</div>
|
|
</div>
|
|
|