ALTER TABLE 表名 MODIFY TTL 时间列 + INTERVAL 20 DAY;
运行以后,以当前时间为基准,保留过去20天数据,再历史的数据都会被删掉
例子:
clickhouse-client --user default --password 123456 -d stock_data --multiquery < ttl.sql
ttl.sql
ALTER TABLE MDAfterHourFixedPriceSnapshot MODIFY TTL orig_time + INTERVAL 20 DAY;
ALTER TABLE MDAfterHourFixedPriceTickExecution MODIFY TTL exec_time + INTERVAL 20 DAY;
ALTER TABLE MDCnIndexSnapshot MODIFY TTL orig_time + INTERVAL 20 DAY;
ALTER TABLE MDHKTProductStatus MODIFY TTL orig_time + INTERVAL 20 DAY;
ALTER TABLE MDHKTRealtimeLimit MODIFY TTL orig_time + INTERVAL 20 DAY;
ALTER TABLE MDHKTSnapshot MODIFY TTL orig_time + INTERVAL 20 DAY;
ALTER TABLE MDIndexSnapshot MODIFY TTL orig_time + INTERVAL 20 DAY;
ALTER TABLE MDIndicatorOfTradingVolumeSnapshot MODIFY TTL orig_time + INTERVAL 20 DAY;
ALTER TABLE MDNegotiableTickExecution MODIFY TTL exec_time + INTERVAL 20 DAY;
ALTER TABLE MDNegotiableTickOrder MODIFY TTL order_time + INTERVAL 20 DAY;
ALTER TABLE MDOrderQueue MODIFY TTL order_time + INTERVAL 20 DAY;
ALTER TABLE MDRefinancingTickExecution MODIFY TTL exec_time + INTERVAL 20 DAY;
ALTER TABLE MDRefinancingTickOrder MODIFY TTL order_time + INTERVAL 20 DAY;
ALTER TABLE MDSnapshot MODIFY TTL orig_time + INTERVAL 20 DAY;
ALTER TABLE MDTickExecution MODIFY TTL exec_time + INTERVAL 20 DAY;
ALTER TABLE MDTickOrder MODIFY TTL order_time + INTERVAL 20 DAY;