在Clickhouse中,表按天分区。现在,为了方便起见,我想在一个alter
查询中删除多分区。
我已经使用while循环通过shell完成了此操作:
while [[ $startDate < $endDate ]]
do
clickhouse-client --query="alter table db.table drop partition toYYYYMMDD(toDate($startDate))"
startDate=`date -d "+1 day $startDate" +%Y-%m-%d`
done
我只想找到一些可以轻松实现此目的的方法。有什么办法吗?谢谢〜
答案 0 :(得分:0)
您可以改为使用ALTER TABLE <table> DELETE WHERE <partition-filters>
一次性删除多个分区。
答案 1 :(得分:0)
你可以使用这个
ALTER TABLE my_table ON CLUSTER 'my-cluster'
DROP PARTITION '2020-01-01',
DROP PARTITION '2020-01-02',
DROP PARTITION '2020-01-03'
不幸的是,似乎没有比这更方便的了。