0

我有一个conditions名为test. 我创建了一个hypertable并插入了数百行。

当我运行 selectshow_chunks()时,它可以工作并显示块,但我不能按照手册中的建议使用表名作为参数。这不起作用:

SELECT show_chunks("test"."conditions");

我怎样才能解决这个问题?

ps:我想通过名字来查询chunk本身?我怎样才能做到这一点?

4

1 回答 1

3

需要一个 regclass,这show_chunks取决于您当前的搜索路径,这意味着您需要对表进行架构限定。

以下应该有效:

SELECT public.show_chunks('test.conditions');

仅当您的表是 a 时才需要双引号delimited identifier,例如,如果您的表名包含空格,则需要为标识符添加双引号。不过,您仍然需要将其用单引号括起来:

SELECT public.show_chunks('test."equipment conditions"');
SELECT public.show_chunks('"test schema"."equipment conditions"');

有关标识符引用的更多信息: https ://www.postgresql.org/docs/current/sql-syntax-lexical.html#SQL-SYNTAX-IDENTIFIERS

编辑:解决PS:

我想通过其名称查询块本身?我怎样才能做到这一点?

feike=# SELECT public.show_chunks('test.conditions');
                show_chunks                 
--------------------------------------------
 _timescaledb_internal._hyper_28_1176_chunk
 _timescaledb_internal._hyper_28_1177_chunk
[...]

SELECT * FROM _timescaledb_internal._hyper_28_1176_chunk;
于 2019-07-10T15:05:39.210 回答