Sep 29, 2021

ClickHouse Tips #12: Apply Functions to Columns with a Single Call

Clickhouse 21 allows some fancy operations packed into multiple columns with SELECT modifiers.
Tinybird
Team

Sometimes we have to apply simple operations in multiple columns and modify the stored/original value of those columns. ClickHouse has SELECT modifiers that can help us: APPLY, EXCEPT AND REPLACE.

Let’s see some easy examples using this simple set:

The first one APPLY will apply a function to all the columns we specify in the SELECT clause like:

Now, with EXCEPT we can select different columns except the ones specified, and we can combine the modifiers:

The last one is REPLACE that you can use again apply simple visual functions and replace columns with new values, using alias expressions:

Sweet right? well as we said you can mix them all like this:

or this,

And stay tuned for the next ClickHouse release 21.10 in which we can use a lambda function inside an APPLY.

Do you like this post?

Related posts

Coming soon on ClickHouse: Window functions
ClickHouse tips #11: Best way to get query types

Tinybird

Team

Sep 22, 2021
ClickHouse tips #7: Forward and backfilling null values
We launched an open source ClickHouse Knowledge Base

Tinybird

Team

Oct 11, 2022
ClickHouse tips #3: the transform function
ClickHouse Tips #4: Materializing UNION ALL queries
Experimental ClickHouse: Projections
ClickHouse tips #5: Adding and subtracting intervals
ClickHouse tips #6: Filtering data in subqueries to avoid joins
ClickHouse JOINs... 100x faster

Build fast data products, faster.

Try Tinybird and bring your data sources together and enable engineers to build with data in minutes. No credit card required, free to get started.
Need more? Contact sales for Enterprise support.