【发布时间】:2020-08-10 14:33:21
【问题描述】:
版本 18.16.1
CREATE TABLE traffic (
`date` Date,
...
) ENGINE = MergeTree(date, (end_time), 8192);
我想改成PARTITION BY toYYYYMMDD(date) 不删除表怎么做。
【问题讨论】:
标签: clickhouse
版本 18.16.1
CREATE TABLE traffic (
`date` Date,
...
) ENGINE = MergeTree(date, (end_time), 8192);
我想改成PARTITION BY toYYYYMMDD(date) 不删除表怎么做。
【问题讨论】:
标签: clickhouse
由于ALTER query不允许分区更改,可能的方法是创建一个新表
CREATE TABLE traffic_new
(
`date` Date,
...
)
ENGINE = MergeTree(date, (end_time), 8192)
PARTITION BY toYYYYMMDD(date);
并移动您的数据
INSERT INTO traffic_new SELECT * FROM traffic WHERE column BETWEEN x and xxxx;
如有必要,重命名决赛桌。 是的,这个选项涉及删除旧表(似乎没有办法跳过这一步)
【讨论】: