當前位置:首頁 > IT技術(shù) > 數(shù)據(jù)庫 > 正文

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

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

TDSQL想要按照月進行二級分區(qū),即每個月一個分區(qū)。以下語句是否可以?
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))

按照目前的理解,感覺有個困惑,所以想請教下。LESS THAN 中的 202102 與 month(insert_time)的結(jié)果(1-12區(qū)間的整數(shù))是如何比較大小,還是 202102其實是 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
這個我看過,所以,這里有個困惑。202106這個總是大于month(fired)

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

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

helper 8-31 10:45:43
你可以測試一下

helper 8-31 10:45:58
不用擔心

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

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

helper 8-31 10:47:58
會自增

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

a 8-31 10:48:47
多謝

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

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