CREATE TABLE array_join_sorted (id UInt64, tags Array(String), payload String) ENGINE = MergeTree ORDER BY id
INSERT INTO array_join_sorted SELECT number, arrayMap(i -> concat('t', toString(i)), range(number % 4)), repeat('p', 100) FROM numbers(10000000)
CREATE TABLE array_join_wide_chain (A Array(String), B Array(String), C Array(String)) ENGINE = MergeTree ORDER BY tuple()
INSERT INTO array_join_wide_chain SELECT arrayMap(i -> concat('a', toString(number), '_', toString(i)), range(100)), arrayMap(i -> concat('b', toString(number), '_', toString(i)), range(100)), arrayMap(i -> concat('c', toString(number), '_', toString(i)), range(100)) FROM numbers(100000)
SELECT count() FROM (SELECT [number] a, [number * 2] b FROM numbers(10000000)) AS t ARRAY JOIN a, b WHERE NOT ignore(a + b)
SELECT count() FROM (SELECT [number] a, [number * 2] b FROM numbers(10000000)) AS t LEFT ARRAY JOIN a, b WHERE NOT ignore(a + b)
SELECT count() FROM (SELECT [number] a, [number * 2] b FROM numbers(10000000)) AS t ARRAY JOIN a, b WHERE NOT ignore(a + b) SETTINGS enable_unaligned_array_join = 1
SELECT count() FROM (SELECT [number] a, [number * 2] b FROM numbers(10000000)) AS t LEFT ARRAY JOIN a, b WHERE NOT ignore(a + b) SETTINGS enable_unaligned_array_join = 1
SELECT count() FROM (SELECT [number] a, [number * 2, number] b FROM numbers(10000000)) AS t ARRAY JOIN a, b WHERE NOT ignore(a + b) SETTINGS enable_unaligned_array_join = 1
SELECT count() FROM (SELECT [number] a, [number * 2, number] b FROM numbers(10000000)) AS t LEFT ARRAY JOIN a, b WHERE NOT ignore(a + b) SETTINGS enable_unaligned_array_join = 1
with 'clickhouse' as str select arrayJoin(range(number % 10)), materialize(str) from numbers(10000000) settings enable_lazy_columns_replication = 0 format Null
SELECT x, str FROM (SELECT materialize(repeat('clickhouse', 20)) AS str, range(number % 10) AS arr FROM numbers(10000000)) ARRAY JOIN arr AS x FORMAT Null
SELECT x, str FROM (SELECT materialize(repeat('clickhouse', 20)) AS str, range(number % 10) AS arr FROM numbers(3000000)) ARRAY JOIN arr AS x ORDER BY x FORMAT Null
SELECT a, b, c FROM array_join_wide_chain ARRAY JOIN A AS a ARRAY JOIN B AS b ARRAY JOIN C AS c LIMIT 31 SETTINGS max_threads = 1 FORMAT Null
SELECT a, b, c FROM array_join_wide_chain LEFT ARRAY JOIN A AS a LEFT ARRAY JOIN B AS b LEFT ARRAY JOIN C AS c LIMIT 31 SETTINGS max_threads = 1 FORMAT Null
SELECT id, arrayJoin(emptyArrayToSingle(tags)) AS tag, payload FROM array_join_sorted ORDER BY id LIMIT 10 OFFSET 1000000 SETTINGS max_threads = 1 FORMAT Null
SELECT id, arrayJoin(emptyArrayToSingle(tags)) AS tag, payload FROM array_join_sorted WHERE tag = 't2' SETTINGS max_threads = 1, enable_lazy_columns_replication = 0 FORMAT Null
DROP TABLE IF EXISTS array_join_wide_chain
DROP TABLE IF EXISTS array_join_sorted