получить все уникальные элементы в этих массивах.
Делаю через arrayJoin, но мне кажется это не оптимально. Есть какие-то еще варианты?
select groupUniqArray(arrayJoin(col)) as elements
with [1,2,3,4,4,4,3] as mas select arrayDistinct(mas)
но она не группирует отдельные строки. В каждой отдельной строке значения уже уникальные
Как задача поставлена, так и предложено решение )
Приведите пример своих массивов, тогда и видно будет
select groupUniqArray(arrayJoin(arr)) as arr2 from ( select [1,2,3] as arr union all select [2,3,4] as arr ) ) должен получить 1,2,3,4
select arrayDistinct(flatten(groupArray(arr2))) from ( select [1,2,3] as arr2 union all select [2,3,4] as arr2 )
SELECT groupUniqArrayArray(arr) AS arr2 FROM ( SELECT [1, 2, 3] AS arr UNION ALL SELECT [2, 3, 4] AS arr )
Обсуждают сегодня