跳到主要内容
跳到主要内容

替代查询语言

除了标准 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 中定义的所有函数。