當(dāng)前位置:首頁(yè) > IT技術(shù) > 數(shù)據(jù)庫(kù) > 正文

TDsql,二級(jí)分區(qū)表,按月分區(qū)相關(guān)問題
2021-09-04 10:38:15

a 8-31 10:41:49
請(qǐng)問下關(guān)于TDSQL的問題。

TDSQL想要按照月進(jìn)行二級(jí)分區(qū),即每個(gè)月一個(gè)分區(qū)。以下語(yǔ)句是否可以?
shardkey=cluster_id PARTITION BY RANGE (month(insert_time)) (PARTITION p0 VALUES LESS THAN (202102), PARTITION p1 VALUES LESS THAN (202103), PARTITION p2 VALUES LESS THAN (202104))

按照目前的理解,感覺有個(gè)困惑,所以想請(qǐng)教下。LESS THAN 中的 202102 與 month(insert_time)的結(jié)果(1-12區(qū)間的整數(shù))是如何比較大小,還是 202102其實(shí)是 month(202102)再與 month(insert_time)比較?

helper 8-31 10:43:54
CREATE TABLE `employees_hash_range` (
`id`int NOT NULL,
`city` varchar(10),
`fired` DATE NOT NULL DEFAULT '1970.01.01',
PRIMARY KEY(id)
) shardkey=id
PARTITION BY RANGE (month(fired)) (
PARTITION p0 VALUES LESS THAN (202106),
PARTITION p1 VALUES LESS THAN (202107)
);
參考下

a 8-31 10:44:35
這個(gè)我看過,所以,這里有個(gè)困惑。202106這個(gè)總是大于month(fired)

a 8-31 10:45:19
因?yàn)?month(fired)總是在1-12之間,然后不是總小于 202106?

helper 8-31 10:45:38
底層代碼是這樣寫的

helper 8-31 10:45:43
你可以測(cè)試一下

helper 8-31 10:45:58
不用擔(dān)心

a 8-31 10:46:35
所以,是會(huì) month(202106)與 month(fired)對(duì)比?

a 8-31 10:47:31
只需要寫2個(gè) VALUES LESS THAN ,后續(xù)會(huì)自增?

helper 8-31 10:47:58
會(huì)自增

a 8-31 10:48:43
那我先試試~

a 8-31 10:48:47
多謝

本文摘自 :https://www.cnblogs.com/

開通會(huì)員,享受整站包年服務(wù)立即開通 >