примерно так:
alter table tt update ss = (select arrayMap(k,s-> if(k=4225967219,['XX','YY'],s), kk, ss )
from tt where id=398532878)
where id=398532878;
Хотелось поменять один элемент внутри массива.
Такой запрос мертово завешивает таблицу и все запросы к ней.
ClickHouse server version 21.1.9 revision 54443
Точечный апдейт это не про клик ни разу. Насколько я в курсе, даже такой апдейт одного значения как минимум приведет к перезаписыванию всех парт, где данная запись находится..
а подзапрос зачем? почему так не подходит? alter table tt update ss = arrayMap(k,s-> if(k=4225967219,['XX','YY'],s), kk, ss ) where id=398532878;
Обсуждают сегодня