Перейти к основному содержимому
Перейти к основному содержимому

Альтернативные языки запросов

Кроме стандартного SQL, ClickHouse поддерживает различные альтернативные языки запросов для обращения к данным.

В настоящее время поддерживаемые диалекты:

Какой язык запросов используется, контролируется с помощью настройки dialect.

Стандартный SQL

Стандартный SQL является языком запросов по умолчанию в ClickHouse.

SET dialect = 'clickhouse'

Язык запросов с конвейером (PRQL)

Experimental feature. Learn more.

Чтобы включить PRQL:

SET allow_experimental_prql_dialect = 1; -- this SET statement is required only for ClickHouse versions >= v25.1
SET dialect = 'prql'

Пример запроса PRQL:

from trips
aggregate {
    ct = count this
    total_days = sum days
}

Внутри ClickHouse используется трансляция из PRQL в SQL для выполнения запросов PRQL.

Язык запросов Kusto (KQL)

Experimental feature. Learn more.

Чтобы включить KQL:

SET allow_experimental_kusto_dialect = 1; -- this SET statement is required only for ClickHouse versions >= 25.1
SET dialect = 'kusto'
numbers(10) | project number
┌─number─┐
│      0 │
│      1 │
│      2 │
│      3 │
│      4 │
│      5 │
│      6 │
│      7 │
│      8 │
│      9 │
└────────┘

Обратите внимание, что запросы KQL могут не иметь доступа ко всем функциям, определенным в ClickHouse.