hits_100m_single CREATE TABLE jit_test_memory ( key UInt64, value_1 UInt64, value_2 UInt64, value_3 UInt64, value_4 UInt64, value_5 UInt64, predicate UInt8 ) Engine = Memory CREATE TABLE jit_test_merge_tree ( key UInt64, value_1 UInt64, value_2 UInt64, value_3 UInt64, value_4 UInt64, value_5 UInt64, predicate UInt8 ) Engine = MergeTree ORDER BY key CREATE TABLE jit_test_merge_tree_nullable ( key UInt64, value_1 Nullable(UInt64), value_2 Nullable(UInt64), value_3 Nullable(UInt64), value_4 Nullable(UInt64), value_5 Nullable(UInt64), predicate UInt8 ) Engine = Memory CREATE TABLE jit_test_memory_nullable ( key UInt64, value_1 Nullable(UInt64), value_2 Nullable(UInt64), value_3 Nullable(UInt64), value_4 Nullable(UInt64), value_5 Nullable(UInt64), predicate UInt8 ) Engine = MergeTree ORDER BY key function sum min max avg any anyLast count table jit_test_memory jit_test_merge_tree jit_test_memory_nullable jit_test_merge_tree_nullable group_scale 1000000 INSERT INTO {table} SELECT number % 1000000, number, number, number, number, number, if (number % 2 == 0, 1, 0) FROM system.numbers_mt LIMIT 10000000 SELECT {function}(value_1), {function}(value_2), {function}(value_3) FROM {table} GROUP BY key FORMAT Null SELECT {function}(value_1), {function}(value_2), groupBitAnd(value_3), {function}(value_3) FROM {table} GROUP BY key FORMAT Null SELECT {function}If(value_1, predicate), {function}If(value_2, predicate), {function}If(value_3, predicate) FROM {table} GROUP BY key FORMAT Null SELECT {function}If(value_1, predicate), {function}If(value_2, predicate), groupBitAndIf(value_3, predicate), {function}If(value_3, predicate) FROM {table} GROUP BY key FORMAT Null SELECT {function}(value_1), {function}(value_2), {function}(value_3), {function}(value_4), {function}(value_5) FROM {table} GROUP BY key FORMAT Null SELECT {function}(value_1), {function}(value_2), groupBitAnd(value_3), {function}(value_3), {function}(value_4), {function}(value_5) FROM {table} GROUP BY key FORMAT Null SELECT {function}If(value_1, predicate), {function}If(value_2, predicate), {function}If(value_3, predicate), {function}If(value_4, predicate), {function}If(value_5, predicate) FROM {table} GROUP BY key FORMAT Null SELECT {function}If(value_1, predicate), {function}If(value_2, predicate), groupBitAndIf(value_3, predicate), {function}If(value_3, predicate), {function}If(value_4, predicate), {function}If(value_5, predicate) FROM {table} GROUP BY key FORMAT Null SELECT {function}(WatchID), {function}(CounterID), {function}(ClientIP) FROM hits_100m_single GROUP BY intHash32(UserID) % {group_scale} FORMAT Null SELECT {function}(WatchID), {function}(CounterID), groupBitAnd(ClientIP), {function}(ClientIP) FROM hits_100m_single GROUP BY intHash32(UserID) % {group_scale} FORMAT Null SELECT {function}(WatchID), {function}(CounterID), {function}(ClientIP), {function}(GoodEvent), {function}(CounterClass) FROM hits_100m_single GROUP BY intHash32(UserID) % {group_scale} FORMAT Null SELECT {function}(WatchID), {function}(CounterID), groupBitAnd(ClientIP), {function}(ClientIP), {function}(GoodEvent), {function}(CounterClass) FROM hits_100m_single GROUP BY intHash32(UserID) % {group_scale} FORMAT Null WITH (WatchID % 2 == 0) AS predicate SELECT {function}If(WatchID, predicate), {function}If(CounterID, predicate), {function}If(ClientIP, predicate) FROM hits_100m_single GROUP BY intHash32(UserID) % {group_scale} FORMAT Null WITH (WatchID % 2 == 0) AS predicate SELECT {function}If(WatchID, predicate), {function}If(CounterID, predicate), groupBitAndIf(ClientIP, predicate), {function}If(ClientIP, predicate) FROM hits_100m_single GROUP BY intHash32(UserID) % {group_scale} FORMAT Null WITH (WatchID % 2 == 0) AS predicate SELECT {function}If(WatchID, predicate), {function}If(CounterID, predicate), {function}If(ClientIP, predicate), {function}If(GoodEvent, predicate), {function}If(CounterClass, predicate) FROM hits_100m_single GROUP BY intHash32(UserID) % {group_scale} FORMAT Null WITH (WatchID % 2 == 0) AS predicate SELECT {function}If(WatchID, predicate), {function}If(CounterID, predicate), groupBitAndIf(ClientIP, predicate), {function}If(ClientIP, predicate), {function}If(GoodEvent, predicate), {function}If(CounterClass, predicate) FROM hits_100m_single GROUP BY intHash32(UserID) % {group_scale} FORMAT Null DROP TABLE IF EXISTS {table}