Timescaledb - Как отображать фрагменты гипертаблицы в определенной схеме

У меня есть таблица с именем conditions в схеме с именем test. Я создал hypertable и вставил сотни строк.

Когда я запускаю select show_chunks(), он работает и отображает фрагменты, но я не могу использовать имя таблицы в качестве параметра, как предлагается в руководстве. Это не работает:

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

Как я могу это исправить?

Ps: Я хочу запросить сам чанк по его имени? Как я могу это сделать?


person iso_9001_    schedule 10.07.2019    source источник
comment
show_chunks принимает имя таблицы как строку, а не как идентификатор, см. docs.timescale.com /v1.3/api#show_chunks Вы пытались указать имя схемы в строке?   -  person k_rus    schedule 10.07.2019
comment
Чанк - это таблица, поэтому его можно запросить обычным запросом PostgreSQL, если у вас достаточно прав.   -  person k_rus    schedule 10.07.2019


Ответы (1)


show_chunks ожидает regclass, что в зависимости от вашего текущего пути поиска означает, что вам нужно квалифицировать схему по таблице.

Следующее должно работать:

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

Двойные кавычки необходимы только в том случае, если ваша таблица представляет собой 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;
person Feike Steenbergen    schedule 10.07.2019