Representa o conteúdo de uma projeção em tabelas MergeTree. Pode ser usado para introspecção.
Sintaxe
mergeTreeProjection(database, table, projection)Argumentos
| Argumento | Descrição |
|---|---|
database |
O nome do banco de dados de onde a projeção será lida. |
table |
O nome da tabela de onde a projeção será lida. |
projection |
A projeção que será lida. |
Valor retornado
Um objeto de tabela com as colunas fornecidas pela projeção indicada.
Exemplo de uso
CREATE TABLE test
(
`user_id` UInt64,
`item_id` UInt64,
PROJECTION order_by_item_id
(
SELECT _part_offset
ORDER BY item_id
)
)
ENGINE = MergeTree
ORDER BY user_id;
INSERT INTO test SELECT number, 100 - number FROM numbers(5);SELECT *, _part_offset FROM mergeTreeProjection(currentDatabase(), test, order_by_item_id); ┌─item_id─┬─_parent_part_offset─┬─_part_offset─┐
1. │ 96 │ 4 │ 0 │
2. │ 97 │ 3 │ 1 │
3. │ 98 │ 2 │ 2 │
4. │ 99 │ 1 │ 3 │
5. │ 100 │ 0 │ 4 │
└─────────┴─────────────────────┴──────────────┘DESCRIBE mergeTreeProjection(currentDatabase(), test, order_by_item_id) SETTINGS describe_compact_output = 1; ┌─name────────────────┬─type───┐
1. │ item_id │ UInt64 │
2. │ _parent_part_offset │ UInt64 │
└─────────────────────┴────────┘