如何在clickhouse表上使用ttl?

ejk8hzay  于 2021-07-15  发布在  ClickHouse
关注(0)|答案(1)|浏览(770)

通过阅读文档,我发现ttl特性对我来说非常有用。但是,我无法构造有效的sql来使用它。
我该怎么做:

CREATE TABLE t1 (
  name String, 
  date DateTime default now(),
  number UInt64 default 0 TTL date + INTERVAL 1 DAY 
) Engine MergeTree() ORDER BY name;

其误差如下:

Syntax error: failed at position 92 (line 4, col 27):
...[copy of my code here]
Expected one of: NOT, LIKE, AND, OR, IN, BETWEEN, COMMENT, CODEC, token, IS, NOT LIKE, NOT IN, GLOBAL IN, GLOBAL NOT IN, ClosingRoundBracket, Comma, QuestionMark

我也尝试过使用全表ttl:

CREATE TABLE t1 (
  name String, 
  date DateTime default now(),
  number UInt64 default 0  
) Engine MergeTree() ORDER BY name TTL date + INTERVAL 1 DAY;

这也导致了一个错误。
据我所知,我是按照文件做的(https://clickhouse.yandex/docs/en/operations/table_engines/mergetree/#table_engine-mergetree-creating-a-table),但我仍然无法使用此功能。
我使用的是服务器版本19.5.3版本54417。
请提供有关如何使用ttl功能的任何示例或想法!

iugsix8n

iugsix8n1#

表和列的TTL还没有发布,它们将在19.6.x中提供。文档反映了“大师级”的最新技术,而不是最新版本。这当然令人困惑。为了查看特定版本,您可以参考特定主要版本的文档,如下所示:https://clickhouse.yandex/docs/v19.5/en/operations/table_engines/mergetree/

相关问题