ClickHouse SQL

1
arraySum(x -> x * x, b)

可传 lambda 函数,相当于

1
2
3
arraySum(
arrayMap(x -> x * x, b)
)

with 子句不仅能定义临时表,还能定义常量、函数:

1
2
3
4
5
6
7
WITH
toFloat64('nan') AS nan,
xs -> ... AS mean_value,
(a, b) -> ... AS normalized_dot,
x -> ... AS clip_corr,
x -> ... AS finite_or_null,
(last_px, first_px) -> ... AS endpoint_return,

1
sumResample(start, stop, step)(value, key)

先按 (start, stop, step) 分桶,按 key 把 value 装桶里,执行聚合,这里是 sum,返回数组。配合 group by 使用。


1
2
SELECT arraySlice([10, 20, 30, 40, 50], 2, 3);
-- [20, 30, 40]

从第二个开始取三个。注意 ClickHouse 数组下标从 1 开始计算索引


ClickHouse SQL
https://wtx17.github.io/2026/10/12/ClickHouse-SQL/
作者
wtx
发布于
2026年10月12日
更新于
2026年11月6日
许可协议