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/