Skip to content
ClickHouse Docs
ClickHouse DocsClickHouse Docs

mergeTreeProjection

Representa el contenido de una proyección en tablas MergeTree. Puede utilizarse para tareas de introspección.

Sintaxis

mergeTreeProjection(database, table, projection)

Argumentos

Argumento Descripción
database El nombre de la base de datos de la que se leerá la proyección.
table El nombre de la tabla de la que se leerá la proyección.
projection La proyección que se leerá.

Valor devuelto

Un objeto de tabla con las columnas proporcionadas por la proyección indicada.

Ejemplo 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 │
   └─────────────────────┴────────┘
Navigation